这是一个有趣的问题(或者至少我认为是这样) 作为管理员,我有一个包含 N 个条目的表(51 给出一个数字)。一行中的每个条目都是一个招聘人员姓名,并带有指向该人“登录”的链接。我希望能够单击每个招聘人员“登录”,将我带到该帐户,在那里验证一些事实,注销,以管理员身份重新登录并继续循环(以招聘人员身份登录,验证,注销等)我在通过查找每一行然后每个单元格来查找表格。(find_elements_by_tag_name("tr")
后跟find_elements_by_tag_name("td")
)。
当我以招聘人员的身份注销并以管理员的身份重新登录时,问题就出现了,现在我之前发现的单元格抛出了一个陈旧的元素异常。
for row in rows:
if chk == "true":
cells[6].find_element_by_link_text("Login").click() # recruiter login
alert = driver.switch_to_alert()
alert.accept()
#Verify Recruiter account is the same as the one you logged in as
driver.find_element_by_link_text("Logout").click()
self.login() #admin login
self.bringUpRecruiters()
我可以调用在每次迭代中查找行和列的函数。但是,webdriver 在每次迭代时需要半分钟才能找到所有单元格元素(51 行 x 7 列)。51 次迭代大约需要 25 分钟。如果行数增加,它只会增加更多。
有没有更优雅、更省时的方法呢?我会很感激你的好主意!
我正在使用 Webdriver + Python 绑定。