【发布时间】:2012-12-21 04:32:55
【问题描述】:
我创建了一个与 xpath 匹配的元素列表,并希望依次单击每个元素。但是,如果我使用 get_attribute("href") 命令,我会收到 'unicode' object has no attribute 'click' 错误。这是因为 href 是一个字符串。如果我不使用 get_attribute 并简单地使用这个命令:
driver.find_elements_by_xpath(".//div/div/div[3]/table//tr[12]/td/table//tr/td/a")
我得到一个充满元素的列表。我可以成功点击列表中的第一个链接;但是,当我单击第二个时,出现此错误: 'Element not 在缓存中找到 - 也许页面在查找后发生了变化' 我想我试图遍历的页面链接的原因是通过对 java 的搜索查询生成的(这是 href 链接之一:
javascript:__doPostBack('ctl00$Content$listJobsByAll1$GridView2','Page$3') )
还有一条相关信息:这个 xpath 位置只有两个属性:href 和 text。
所以,鉴于我正在处理一个 java 网站并且只有两个属性,我希望有人能告诉我可以使用哪些 webdriver 命令来获取一系列可点击的静态链接。除了一个具体的答案之外,任何关于我自己如何解决这个问题的建议都会有所帮助。
【问题讨论】:
标签: python selenium click webdriver element