微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python-Xpath的硒计数元素

我有一个网页,其中的表格包含许多下载链接
我想让硒点击最后一个

表:

item1 Download
item2 Download
item3 Download

硒必须单击下载下一个项目3

我用xpath查找所有元素,然后以这种方式获取返回数组或字典的大小

x = bot._driver.find_element_by_xpath("//a[contains(text(),'Download')]").size()

但是我总是得到这个错误

TypeError: 'dict' object is not callable

我试图使用get_xpath_count方法,但是该方法在python的硒中不存在!

我想到了另一种解决方案,但我不知道该怎么做,如下

x = bot._driver.find_element_by_xpath("(//a[contains(text(),'Download')])[size()-1]")

要么

x = bot._driver.find_element_by_xpath("(//a[contains(text(),'Download')])[last()]")

或者是其他东西

解决方法:

使用find_elements_by_xpath获取相关元素的数量

count = len(driver.find_elements_by_xpath(xpath))

然后单击最后一个元素:

elem = driver.find_element_by_xpath(xpath[count])
elem.click()

注意:find_elements_by_xpath在第一个代码片段中为复数形式

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐