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

如何编写XPATH从指定HTML中抓取「Location:」后的目标文本

精准提取Location内容的XPath实现方案

原有写法的核心缺陷

之前的XPath仅完成了目标p元素的整体定位,没有深入到被<br>标签分隔的独立文本节点层级,也没有针对「Location:」固定前缀做文本截断,因此只能返回整个p元素的全部内容,无法隔离出需要的目标位置文本。

可直接复用的正确写法

适配XPath 1.0(兼容Scrapy、lxml等绝大多数常用解析工具)

substring-after(//h3[contains(., 'Description')]/following-sibling::p[1]/text()[contains(., 'Location:')], 'Location: ')

适配XPath 2.0+(兼容Saxon等新版解析引擎)

//h3[contains(., 'Description')]/following-sibling::p[1]/tokenize(., '<br>')[contains(., 'Location:')] => substring-after(., 'Location: ')

规则匹配说明

  • 定位逻辑优先基于「Description」标题的相邻关系锁定目标p元素,不依赖固定class属性,页面结构轻微变动时容错性更强
  • 利用HTML中<br>标签的节点分隔特性,直接定位到独立存放「Location:」文本的节点,提取范围自动截止到下一个<br>标签位置,完全满足“识别到「Location:」后抓取紧随其后的一段文本即停止”的提取要求
  • 通过substring-after函数自动去除「Location:」固定前缀,针对给定示例HTML,最终提取结果为Australia.

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.26 07:15:06