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

如何使用XPath获取<p>标签之间的文本内容?

提取指定下

标签的文本内容

直接用XPath提取文本

你的基础XPath已经能定位到目标

标签,在此基础上可以通过以下方式获取文本:

  • 获取每个

    的直接子文本(仅提取

    下一级的文本,不包含子标签内的文本):

    //span[@class='_39I1Z _2ITlL _3D3LC _3NGVr embTL _1zNVc']/span/p/text()
    

    注意:对于包含<b>子标签的<p>(比如你的第4个

    ),这个写法会返回空,因为它的文本在<b>标签内。

  • 获取每个

    的全部文本内容(包含子标签内的文本):

    //span[@class='_39I1Z _2ITlL _3D3LC _3NGVr embTL _1zNVc']/span/p//text()
    

    这个会提取所有

    下的所有层级文本,包括<b>里的内容。

  • 提取单个

    的全部文本(比如第4个带<b>的

    ):

    string(//span[@class='_39I1Z _2ITlL _3D3LC _3NGVr embTL _1zNVc']/span/p[4])
    
  • 过滤掉空的

    标签(只保留有文本内容的):

    //span[@class='_39I1Z _2ITlL _3D3LC _3NGVr embTL _1zNVc']/span/p[normalize-space(text()) != '']
    

用代码工具提取(以Selenium为例)

如果用Selenium定位到

元素后,直接调用.text属性就能获取该元素的全部可见文本:

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

driver = webdriver.Chrome()
# 假设你已经打开了目标页面
p_elements = driver.find_elements(By.XPATH, "//span[@class='_39I1Z _2ITlL _3D3LC _3NGVr embTL _1zNVc']/span/p")
for p in p_elements:
    print(p.text)

这个方法会自动处理子标签文本,空的

会输出空字符串。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 18:22:20