【问题标题】:Not able to get text between :: before and :: after无法在 :: before 和 :: after 之间获取文本
【发布时间】:2021-06-30 03:57:52
【问题描述】:

在 chrome 的 XPATH finder 中试过这个,元素被突出显示.. 但是 selenium 脚本给出了

Caused by: org.openqa.selenium.NoSuchElementException: no such element: 
Unable to locate element:

//span[@class='badge badge-pill message message-bot']//p[@class='card-text']

【问题讨论】:

    标签: javascript selenium selenium-webdriver css-selectors


    【解决方案1】:

    message-bot 后面有个空格。

    所以也许这会起作用:

    //span[@class='badge badge-pill message message-bot ']//p[@class='card-text']

    【讨论】:

      【解决方案2】:

      要获取文本,请在选择器后添加 .text 另外,尝试使用 css 选择器:

      .badge.badge-pill.message-bot>card-text
      

      所以,你的文字是这样的:

      result = driver.find_element_by_css_selector(".badge.badge-pill.message-bot>card-text").text
      

      或者,

      result = driver.find_element_by_xpath("//span[@class='badge badge-pill message message-bot ']/p[@class='card-text']")
      

      很可能您只需要在p 之前添加一个 /。尝试这两个选项。

      【讨论】:

        猜你喜欢
        • 2022-01-05
        • 1970-01-01
        • 2021-05-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-07-20
        • 1970-01-01
        • 2021-05-07
        相关资源
        最近更新 更多