【问题标题】:Selenium / xpath - Can't find element, finding parent divSelenium / xpath - 找不到元素,找到父 div
【发布时间】:2018-08-10 13:00:31
【问题描述】:

使用 Python 3+ 和 Selenium > IE 驱动程序

我正在运行一个 python 脚本来自动填写页面上的表单。找到父元素的原因是因为有多个元素具有相同的类,除了基于文本的标题之外没有其他标识符。

HTML:

<div class="pg_BoxContents"> /* Div I am trying to select */
<div class="Title">Replay Permissions:</div>
</div>

Python / Selenium:

replay_form = browser.find_element_by_xpath("//span[contains(text(),'Replay Permissions:')]/ancestor::div[contains(@class, 'pg_BoxContents')]")

错误:

selenium.common.exceptions.NoSuchElementException: Message: Unable to find element with xpath == //span[contains(text(),'Details:')]/ancestor::div[contains(@class, 'pg_BoxContents')]

【问题讨论】:

    标签: python selenium xpath


    【解决方案1】:

    替换:

    //span[contains(text(),'Replay Permissions:')]/ancestor::div[contains(@class, 'pg_BoxContents')]
    

    与:

    //div[contains(text(),'Replay Permissions:')]/ancestor::div[contains(@class, 'pg_BoxContents')]
    

    您使用的是//span[...,而您提供的HTML 中没有span。但是有一个div

    【讨论】:

      猜你喜欢
      • 2018-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-29
      • 1970-01-01
      • 2011-10-20
      • 2021-03-20
      • 2014-08-19
      相关资源
      最近更新 更多