2

我有一个文档,其中包含 1 个或两个可以使用 selenium/python 命令找到的链接driver.find_element_by_partial_link_text。无论是一个还是两个链接,我总是希望脚本返回列表中的最后一个。

有没有办法做到这一点?

即,该页面有时具有带有文本stackoverflow.com/xxxxxxx 和stackoverflow.com/iwantthislink 的链接。其他时候它只有 stackoverflow.com/iwantthislink。

当我使用driver.find_element_by_partial_link_text("stackoverflow.com/")它时,它会返回 stackoverflow.com/xxxxxxx,因为它位于 stackoverflow.com/iwantthislink 之前。

我只需要一种方法来始终返回列表中的最后一个元素。

4

1 回答 1

4

find_elements_by_partial_link_text返回一个列表。(通知elementselement。)

要访问最后一个元素,请执行以下操作:

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]
于 2013-06-06T20:41:15.237 回答