You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python Selenium使用带/text()的XPath获取div文本失败求助

问题原因

  • Selenium 所有find_element系列方法仅支持返回DOM元素节点(即WebElement对象),你在XPath结尾加/text()选中的是文本节点,不属于WebElement类型,因此Selenium会判定未找到符合条件的元素,这就是你第二段测试代码返回False的原因。
  • 你最初编写的XPath存在语法错误://div[contains(@class, 'test')/text()] 的条件段写法不符合规范,contains函数的正确格式为contains(待匹配属性, 匹配值),将/text()放入条件段中属于语法错误,自然无法获取到内容。

正确实现方式

你只需要先定位到对应的div元素,再调用WebElement对象的text属性即可获取内部文本内容,示例代码如下:

# 定位目标div元素
test_div = driver.find_element_by_xpath("//div[contains(@class, 'test')]")
# 获取元素文本内容
mytext = test_div.text
print(mytext)

如果使用的是Selenium 4及以上版本,find_element_by_xpath方法已被弃用,推荐使用如下写法:

from selenium.webdriver.common.by import By

test_div = driver.find_element(By.XPATH, "//div[contains(@class, 'test')]")
mytext = test_div.text
print(mytext)

内容的提问来源于stack exchange,提问作者aude

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 03:45:02