我正在try 寻找XPath来获取"h2"标记和"h2"标记之间的"td"元素,或者"h2"标记和结束"table"标记之间的"td"元素,这些元素都是直接的.
HTML Code个
<html> <body> <table> <tbody> <tr> <td colspan="2" class="dc-section" > <h2>HEADING-1</h2> </td> </tr> <tr> <td class="dc-table-name" >Country</td> <td class="dc-table-value" >India</td> </tr> <tr> <td class="dc-table-name" >Country</td> <td class="dc-table-value" >Nepal</td> </tr> <tr> <td colspan="2" class="dc-section" > <h2>HEADING-2</h2> </td> </tr> <tr> <td class="dc-table-name" >Country</td> <td class="dc-table-value" >USA</td> </tr> <tr> <td class="dc-table-name" >Country</td> <td class="dc-table-value" >Canada</td> </tr> </tbody> </table> </body> </html>
给定标题-1,需要值为"Country"--"India"和"Country"-"Nepal"的TD元素.给定标题-2,需要值为"Country"--"USA"和"Country"-"Canada"的TD元素.
try 使用下面的XPath,但对于给定的标题-1,它 Select 所有"td"值.
如何构建一个能同时为"HEADING-1"和"HEADING-2"获取"td"元素的通用XPath表达式?
XPATH(不工作)
//h2[text()='HEADING-1']/following::td
也许不是try 匹配下面的td,而是判断前面的tr和h2,看看它是否匹配.
td
tr
h2
//tr[not(td/h2)][preceding-sibling::tr[td/h2][1][starts-with(td/h2,'HEADING-1')]]/td
Linux实战技能100讲 -〔尹会生〕
黄勇的OKR实战笔记 -〔黄勇〕
Flutter核心技术与实战 -〔陈航〕
正则表达式入门课 -〔涂伟忠〕
OAuth 2.0实战课 -〔王新栋〕
Spark性能调优实战 -〔吴磊〕
深入剖析Java新特性 -〔范学雷〕
eBPF核心技术与实战 -〔倪朋飞〕
Python实战 · 从0到1搭建直播视频平台 -〔Barry〕
结构执行力 -〔李忠秋〕
结构学习力 -〔李忠秋〕
AI大模型企业应用实战 -〔蔡超〕
无涯教程 - RSpec教程
无涯教程 - Sed教程
无涯教程 - 数据结构和算法教程
无涯教程 - PL/SQL教程
无涯教程 - SQL教程
无涯教程 - Swift教程
无涯教程 - PHP7 数据结构和算法教程
无涯教程 - Go Web 爬虫指南教程