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

如何用Selenium提取网页元素文本?遇属性错误求助

解决Selenium提取网页文本的问题

先修正核心方法错误

你碰到的'WebElement' object has no attribute getText报错,是因为Selenium Python绑定里没有getText()方法,正确用法是调用WebElement的.text属性。

提取目标文本的具体方案

结合你提供的HTML结构,分两步提取所需内容:

1. 提取SoftFEPVis (GUI):

直接定位到class为menu-highlight的span元素,获取其文本:

# 定位目标子span元素
gui_label_element = Browser.find_element(By.CLASS_NAME, "menu-highlight")
gui_label = gui_label_element.text.strip()
print(gui_label)  # 输出: SoftFEPVis (GUI):

2. 提取版本号1.6.4

版本号是父元素versionInfo的直接文本节点,不属于子元素,可通过两种方式获取:

方法一:父元素文本过滤拆分

# 定位父span元素
version_info_element = Browser.find_element(By.CLASS_NAME, "versionInfo")
# 获取完整文本后拆分版本号
full_text = version_info_element.text.strip()
version_number = full_text.split('"')[1]
print(version_number)  # 输出: 1.6.4

方法二:JS直接获取文本节点

通过执行JavaScript精准定位目标文本节点:

# 执行JS获取父元素下的版本号文本节点
version_number = Browser.execute_script("""
    return document.querySelector('.versionInfo').childNodes[2].textContent.trim().replace(/"/g, '');
""")
print(version_number)  # 输出: 1.6.4

完整示例代码

from selenium import webdriver
from selenium.webdriver.common.by import By

# 初始化浏览器示例
Browser = webdriver.Chrome()
Browser.get("你的目标网页URL")

# 提取GUI标签
gui_label = Browser.find_element(By.CLASS_NAME, "menu-highlight").text.strip()
# 提取版本号
version_info_text = Browser.find_element(By.CLASS_NAME, "versionInfo").text.strip()
version_number = version_info_text.split('"')[1]

print(gui_label)
print(version_number)

# 关闭浏览器
Browser.quit()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 21:30:58