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

如何用Selenium提取未被标签包裹的Docket No.对应数字

解决方法

以下几种方法可直接提取目标数字"3228",无需后续处理多余标签内容:

方法1:通过JavaScript执行XPath获取文本节点

Selenium的find_element要求返回元素节点,无法直接定位文本节点,但可以通过execute_script执行JS逻辑获取目标文本:

# Python示例
docket_no = driver.execute_script('return document.evaluate("//*[@data-title=\'Docket No.\']/text()[1]", document, null, XPathResult.STRING_TYPE, null).stringValue.trim();')

方法2:定位元素后提取首个文本子节点

先定位到目标<td>元素,再获取它的第一个文本子节点内容:

# Python示例
from selenium.webdriver.common.by import By

td_element = driver.find_element(By.XPATH, '//*[@data-title="Docket No."]')
docket_no = td_element.get_attribute('firstChild').strip()

若部分Selenium版本不支持直接调用firstChild,可改用JS执行:

docket_no = driver.execute_script('return arguments[0].firstChild.nodeValue.trim();', td_element)

方法3:利用textContent直接提取

由于子<div>节点无文本内容,直接获取元素的textContent并去除空格即可:

# Python示例
td_element = driver.find_element(By.XPATH, '//*[@data-title="Docket No."]')
docket_no = td_element.text.strip()
# 或使用get_attribute('textContent')
docket_no = td_element.get_attribute('textContent').strip()

此方法最简洁,适合子节点无额外文本的场景。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 02:57:12