我有一个文档,可以使用selenium/python命令driver.find_element_by_partial_link_text
找到1或两个链接。无论是一个链接还是两个链接,我总是希望脚本返回列表中的最后一个。
有什么办法可以做到吗?
。该页面有时会有一个链接,文本为stackoverflow.com/xxxxxxx和stackoverflow.com/iwantthislink。其他时候只有stackoverflow.com/iwantthislink.
当我使用driver.find_element_by_partial_link_text("stackoverflow.com/")
时,它返回stackoverflow.com/xxxxxxx,因为它在stackoverflow.com/iwantthislink之前。
我只需要一种方法总是返回列表中的最后一个元素
find_elements_by_partial_link_text
返回一个列表。(注意elements
vs element
)
访问最后一个元素,执行:
my_elem = driver.find_elements_by_partial_link_text('sometext')[-1]
更好的是,事先测试元素是否存在:
elems = driver.find_elements_by_partial_link_text('sometext')
if elems:
my_elem = elems[-1]