首页 > 解决方案 > 根据另一个元素 xpath 定位一个元素

问题描述

我正在尝试使用 selenium 和 webdriver 自动化一个过程。

html 看起来像这样:

<span class="contract-item">
    <span class="contract-label">
        <span class="contract-name">Jimmy</span>
    </span>
    <div class="current-stats">
        <span class="info"></span>

我面临的问题是有很多“合同项目”和“信息”类。我只想查找特定“合同名称”的信息。但是,通过找到“合同名称”,我丢失了信息。如何获取特定名称的“信息”?

到目前为止我有这个。

team_name = self.driver.find_elements_by_xpath("//*[contains(text(), {})]".format(jimmy))[1]

非常感谢!

标签: pythonpython-3.xseleniumselenium-webdriverweb-scraping

解决方案


以下是必需的 xpath:

//*[@class='contract-item' and contains(.,'Jimmy')]/div/span[@class='info']

您只需将联系人姓名字符串(即 Jimmy)更改为所需的字符串,您将获得相应的信息。


推荐阅读