首页 文章

如何使用Selenium Python xpath选择元素

提问于
浏览
14

考虑遵循HTML:

<div id='a'>
  <div>
    <a class='click'>abc</a>
  </div>
</div>

我想点击abc,但包装div可能会改变,所以

driver.get_element_by_xpath("//div[@id='a']/div/a[@class='click']")

不是我想要的

我试过了:

driver.get_element_by_xpath("//div[@id='a']").get_element_by_xpath(.//a[@class='click']")

但这不适用于更深的嵌套

有任何想法吗?

1 回答

  • 28

    HTML

    <div id='a'>
      <div>
        <a class='click'>abc</a>
      </div>
    </div>
    

    你可以使用 XPATH 作为:

    //div[@id='a']//a[@class='click']
    

    output

    <a class="click">abc</a>
    

    那说你的Python代码应该是:

    driver.find_element_by_xpath("//div[@id='a']//a[@class='click']")
    

相关问题