XPath技巧:用-after精准提取文本
这里所讲的这篇文章, 本欲达成去处理掉, 于运用XPath之时, 去提取那特定文本内容之际, 所碰到的问题, 尤其是当径直运用text()这个函数, 却没办法获取到目标文本, 并且那目标文本处于特定分隔符之后的这种情况。借由介绍 -after函数究竟该如何使用, 以此 aides 读者能够精准地提取出所需文本, 并且给出XPath所对应的表达式示例。于开展网页数据抓取之际, 或者 XML 文档解析之时, XPath 乃是一种颇具强大力量的工具, 其用途在于对文档里的元素以及属性予以定位以及提取。然而, 有时一味直接运用 text() 函数, 有可能没办法获取到目标文本之处, 特别是当处于文本节点周边存在别的元素或者空白字符的情形之下。本文将会阐述借助 XPath 的-after函数去解决诸如此类问题的办法, 并且给出详尽示例展示。问题描述给定这样一些 HTML 代码片段形成的情况, 其目的在于从中提取出那一段文本, 即Aug 7, 2019 at 9:34 am ET。Author | Aug 7, 2019 at 9:34 am ETAuthor | Aug 7, 2019 at 9:34 am ET如果直接使用 //spanclassmeta这样的 XPath 表达式 /text() , 有可能没办法获得 期望的结果 , 缘由在于 text() 函数 返回的可不是其他特定 而是所有文本节点的集合 , 并且目标文本 也许并不是第一个文本节点 , 又或者前面有空白字符。解决方案使用 -after 函数-“after”函数能够从一个字符串里提取指定分隔符之后的那部分内容, 它具有如下这般的语法:substring-after(string, substring)其中 是要搜索的字符串 是分隔符。于这个示例情形当中, 我们能够运用 -after 函数去提取 “ | ” 之后所呈现的内容。首先呢, 我们得找寻到涵盖目标文本的 span 元素所处位置。其中一种办法是借助 span/a/rel 来确定包含作者链接的 span 元素所在之处。3.14.23.2025年12月5日发布的那编程语言稳定版本是14.2 , 这个版本属于3.14系列里的第二个维护更新。它包含了18项修复 , 着重解决了多进程 、数据类以及正则表达式等模块的回归问题 , 处理了如CVE-2025-12084等安全漏洞。此版本意味着自由线程模式移除GIL正式得到官方支持 , 是一个发展的重要里程碑。下载接着, 就能运用 -after 函数去提取 | 之后所呈现的内容。其完整的 XPath 表达式是这样的:substring-after(//span[span/a/relauthor], |)这个表达式先是去找到包含作者链接的span元素, 接着从中提取该元素字符串值里在“ | ”之后的那部分, 也就是“Aug 7, 2019 at 9:34 am ET”。示例代码 ( lxml)如下是运用 , 以及 lxml 库, 去实施上述 XPath 表达式的示例代码:from lxml import html html_string Author | Aug 7, 2019 at 9:34 am ET tree html.fromstring(html_string) xpath_expression substring-after(//span[span/a/relauthor], |) result tree.xpath(xpath_expression) print(result)Author | Aug 7, 2019 at 9:34 am ET tree html.fromstring(html_string) xpath_expression substring-after(//span[span/a/relauthor], |) result tree.xpath(xpath_expression) print(result)这段代码先是运用 lxml 库, 把 HTML 字符串解析成一个树形结构, 接着, 运用 xpath 方法, 执行 XPath 表达式, 而后将结果打印出来。注意事项总结直接用 text() 函数获取不了目标文本时, -after 函数是有效的办法一。指定分隔符, 就能精准提取目标文本内容。实际使用时, 要依据具体情形来挑合适的这个 XPath 表达式对应函数, 以此保证能精准拿到所需数据。

相关新闻

Doris集群扩缩容实战:FE、BE、BROKER组件弹性伸缩原理与避坑指南

Doris集群扩缩容实战:FE、BE、BROKER组件弹性伸缩原理与避坑指南

1. 项目概述:理解Doris集群扩缩容的核心价值在数据驱动的业务场景里,我们搭建的Doris集群从来都不是一成不变的。业务量可能激增,也可能在某个活动后回落;数据模型会随着产品迭代而调整;甚至为了成本优化,我…

2026/8/17 20:49:55 阅读更多 →
OpenCore Legacy Patcher完整指南:让2007年的老Mac也能跑上最新macOS

OpenCore Legacy Patcher完整指南:让2007年的老Mac也能跑上最新macOS

OpenCore Legacy Patcher完整指南:让2007年的老Mac也能跑上最新macOS 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 2015年的一个周末&#xff0…

2026/8/17 20:49:55 阅读更多 →
BmcWeb:Meson定义常量

BmcWeb:Meson定义常量

Meson有一套自己的定义常量的方式,以BmcWeb举例: //meson.options # BMCWEB_SESSION_AUTH option( session-auth, type: feature, value: enabled, description: Enable session authentication, ) //定义了一个option //meson.build feature_options = [ …

2026/8/17 20:49:55 阅读更多 →

最新新闻

GridCraft:AI动态网格插件,一键解决Illustrator排版对齐难题

GridCraft:AI动态网格插件,一键解决Illustrator排版对齐难题

如果你是一名设计师,或者经常需要处理排版、网格、对齐工作,那么你一定经历过这样的痛苦时刻:面对一个复杂的版面,需要手动计算间距、对齐元素、保持视觉一致性,结果花在“对齐”上的时间比创意本身还多。更让人头疼的…

2026/8/19 1:56:28 阅读更多 →
CPU芯片测试座厂商测试精度高

CPU芯片测试座厂商测试精度高

在CPU芯片的生产过程中,测试座的测试精度至关重要,它直接影响着芯片的质量和性能。今天,我们就来深入了解一下深圳市鸿怡电子有限公司(简称HMILU),看看它是如何在CPU芯片测试座领域做到高测试精度的。一、技…

2026/8/19 1:56:28 阅读更多 →
KKManager 完整指南:专为 Illusion 游戏打造的模组管理工具,让模组、插件与卡片井井有条

KKManager 完整指南:专为 Illusion 游戏打造的模组管理工具,让模组、插件与卡片井井有条

KKManager 完整指南:专为 Illusion 游戏打造的模组管理工具,让模组、插件与卡片井井有条 【免费下载链接】KKManager Mod, plugin and card manager for games by Illusion that use BepInEx 项目地址: https://gitcode.com/gh_mirrors/kk/KKManager …

2026/8/19 1:56:28 阅读更多 →
市面上芯片测试治具制造厂家

市面上芯片测试治具制造厂家

做芯片测试这一行,选对测试治具(测试座、老化座、烧录座)有多重要,相信不用我多说。一个接触不良,可能让你一天的良率报告全部作废;一个寿命不行的探针,可能让你在客户面前颜面尽失。市面上的厂…

2026/8/19 1:56:28 阅读更多 →
从面试官视角看Java核心考点与答题思路

从面试官视角看Java核心考点与答题思路

面试官按下话筒,问出那句“HashMap在JDK 1.8里做了什么调整”,他的眼睛其实不在你的嘴上,而在你的手指尖、眉头间和停顿的长度里。一个常年泡在Java战场上的面试官,最怕的不是遇到不会的候选人,而是遇到一个把问答题背…

2026/8/19 1:56:28 阅读更多 →
FreeRTOS Posix仿真环境搭建与内核机制实验指南

FreeRTOS Posix仿真环境搭建与内核机制实验指南

1. 为什么要在Posix环境仿真FreeRTOS?如果你正在学习嵌入式实时操作系统,尤其是FreeRTOS,那么你大概率会遇到一个经典的困境:硬件依赖。无论是STM32、ESP32还是其他微控制器,你都需要一块开发板、一个调试器&#xff0…

2026/8/19 1:55:28 阅读更多 →

日新闻

【单片机课程设计/毕业设计】基于 STM32 与 WiFi 模块的室内通风智能管控系统设计 基于 STM32 的人体存在感知自适应风扇控制系统设计(018503)

【单片机课程设计/毕业设计】基于 STM32 与 WiFi 模块的室内通风智能管控系统设计 基于 STM32 的人体存在感知自适应风扇控制系统设计(018503)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机,Java、小程序技术领域和毕业项目实战 ✌️…

2026/8/19 0:00:30 阅读更多 →
AI如何驱动数学猜想生成:从大语言模型到自动化数学发现

AI如何驱动数学猜想生成:从大语言模型到自动化数学发现

1. 项目概述:当AI开始“猜”数学定理 最近在AI研究圈里,一个名为“Moonshine”的项目引起了不小的讨论。这名字本身就挺有意思,直译是“月光”,但在数学史上,它特指一个神秘而美丽的联系——魔群月光猜想,连…

2026/8/19 0:00:30 阅读更多 →
WarcraftHelper 魔兽争霸3优化实战指南

WarcraftHelper 魔兽争霸3优化实战指南

WarcraftHelper 魔兽争霸3优化实战指南 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 一台刚配的新电脑,跑《魔兽争霸3》却卡成 PPT——这…

2026/8/19 0:02:31 阅读更多 →

周新闻

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

如果你是一名开发者,最近可能已经感受到了AI大模型正在从“玩具”变成“生产力工具”的强烈信号。从代码补全到智能Agent,从本地部署到云端API,我们正处在一个技术栈快速重构的节点。然而,面对层出不穷的模型、框架和工具&#xf…

2026/8/18 9:15:35 阅读更多 →
工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/18 9:06:28 阅读更多 →
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

2026/8/18 9:04:56 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/17 18:54:37 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/17 18:55:16 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/17 18:55:55 阅读更多 →