【问题标题】:How to get text from html tag span through Selenium and Python如何通过 Selenium 和 Python 从 html 标签跨度获取文本
【发布时间】:2019-06-12 04:43:52
【问题描述】:

这是我的 HTML 并试图获取文本 必须是唯一的。 使用 Python 2.7

尝试使用:

driver.find_element_by_xpath("//span[@id='lblError']/text()")

xpath 无效。

【问题讨论】:

    标签: javascript python selenium xpath xpath-1.0


    【解决方案1】:

    enter code heretime.sleep(1) enter code hereelement = driver.find_element_by_xpath("//span[@id='lblError']") enter code heretext = element.text

    【讨论】:

      【解决方案2】:

      尝试通过 ID 查找元素,然后 get_attribute("innerHTML")。

      var el = driver.find_element_by_id("lblerror")
      var text = el.get_attribute("innerHTML")
      

      【讨论】:

      • 我用的是python,上面的代码好像是java的。我曾尝试使用: text = driver.find_element_by_id("lblError") 并且该错误已解决。
      • 首先,您的 sn-p 错误。查看 python webdriver 文档selenium-python.readthedocs.io
      • 感谢您提供参考链接,但我的 sn-p 没有错。我会附上一个完整的东西。
      • 我没有写" text = driver.find_element_by_id("lblError")" 你显示为错误
      【解决方案3】:

      要检索文本必须是唯一的,您可以使用execute_script() 方法,您可以使用以下解决方案:

      myElement = driver.find_element_by_xpath("//span[@id='lblError']")
      myText = driver.execute_script('return arguments[0].lastChild.textContent;', myElement).strip()
      

      【讨论】:

      • 下面的不行,好像路径无效:myElement = driver.find_element_by_xpath("//span[@id='lblError']")
      • 嗯,无效路径,我从您的代码试验和您提供的 HTML 快照中获取了参考。您可以使用基于文本的相关 HTML 更新问题吗?当您使用 pyhton 2.7 时,请记住在适用的之前附加 self
      猜你喜欢
      • 2021-06-24
      • 1970-01-01
      • 2021-01-12
      • 1970-01-01
      • 2019-01-31
      • 2022-11-10
      • 2019-11-01
      • 1970-01-01
      • 2021-10-20
      相关资源
      最近更新 更多