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在第一个代码片段中为复数形式
标签:web2py,selenium,xpath,python 来源: https://codeday.me/bug/20191122/2063202.html