繁体   English   中英

通过 xpath 在 Python 中查找元素

[英]Finding element in Python by xpath

我正在尝试单击 xpath 为的项目:

//*[@id="single-71048602500"]/div[2]/div[1]

还有更多以//*[@id="single"]开头的元素,并且每次页面加载时数字都会更改。 所以唯一的特定位是“single”和/div[2]/div[1].

CSS_selector 也有编号,所以没用。

select 元素的代码是什么?

我正在使用 Python 和 Selenium。

在这里,我假设您要单击具有“single”和/div[2]/div[1] 组合的所有元素。

首先,尝试从所需元素的父元素中获取所有元素。现在您将留下 WebElements 列表。遍历所有元素并单击 id 以单个开头的元素。

sd = mainpage.find_elements_by_xpath('//*[@id]') #parent webelement
for i in sd:

        if str(i.get_attribute('id')).startswith("single"):

             j = i.find_element_by_xpath('//*[@id="{}"]/div[2]/div[1]'.format(i.get_attribute('id')))
             j.click()

试试这个 xpath,让我知道它是怎么回事。

(//*[contains(@id,"single")]/div[2]/div[1])[index of an element ]

下面的 xpath 将帮助您找到包含单个 id 值的所有元素

//*[contains(@id,"single")]/div[2]/div[1]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM