【发布时间】:2011-06-15 17:16:20
【问题描述】:
我正在使用 Selenium 的远程控制界面在 python 中为网页编写测试脚本。
我是这样写的:
elem = browser.find_element_by_link_text("foo")
elem.click()
elem = browser.find_element_by_name("goo")
elem.send_keys("asdf")
elem = browser.find_element_by_link_text("foo2")
elem.click()
然后它需要在列表中选择一个项目。当鼠标悬停在列表上时,列表变得可见,但如果它被隐藏,selenium 无法找到该元素。该列表还显示基于谁登录的选项。该列表是在 CSS 中实现的,因此尝试在 javascript 中运行它并使用 gettext() 不起作用。
我尝试根据名称、类和 xpath 搜索链接,但它总是报告它不可见我已经从 browser.page_source() 验证该链接在源代码中,所以它正在阅读正确的页面。
如何选择列表中的链接?任何帮助表示赞赏。
【问题讨论】:
-
我们需要更多信息。悬停如何工作?是 CSS 还是 JS?
-
用CSS实现
-
如果知道列表的偏移量,可以使用
move_by_offset(xoffset, yoffset)。阅读更多here。