首页 > 解决方案 > Selenium,具有特定属性的 SELECT 标记

问题描述

'aria-lable'我需要在 id 'jsGrid_vgAllCases' 下选择所有具有属性的链接元素。我首先尝试了以下代码,它将选择 id='jsGrid_vgAllCases' 下的所有链接

for link in driver.find_element_by_id('jsGrid_vgAllCases').find_elements_by_tag_name('a'):
    print(link.text)

然后我尝试了这种方式

for link in driver.find_element_by_id('jsGrid_vgAllCases').find_elements_by_xpath('//a[@aria-label]'):
    print(link.text)

但它会选择所有具有“aria-lable”属性的链接,即使在 id='jsGrid_vgAllCases' 之外

请指教如何写这个。

谢谢

标签: python-3.xselenium

解决方案


你可以这样的xpath:

//a[@aria-lable]

所以基本上它会指向所有a具有aria-lable属性的标签。

然后像这样使用它:

all_links = find_elements_by_xpath("//a[@aria-lable]")

现在一切all_links都是 Python 中的列表。所以你打印它的大小是这样的:

print(len(all_links ))

你可以在这个 python 列表上做很多操作。


推荐阅读