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

基于两个非同级节点条件的XPath元素选择方法问询

正确的XPath筛选语法

根据你的需求,分两种常见HTML结构场景给出对应XPath表达式:

场景1:

是目标
的同级前置节点(对应你提到的preceding-sibling)

如果HTML结构中<h2 class="_2MeiE">PARIS</h2>位于<div class="_1rOLI _My0B">前方且为同级节点,使用以下XPath:

//div[@class="_1rOLI _My0B" and preceding-sibling::h2[@class="_2MeiE" and text()="PARIS"]]//a[@class="_1ufH4" and .//div[@class="_16U2O typography-h220" and text()="20:30"]]

语法逻辑:

  • preceding-sibling::h2[@class="_2MeiE" and text()="PARIS"]:筛选出拥有文本为PARIS的指定h2前置同级节点的目标div容器
  • .//div[@class="_16U2O typography-h220" and text()="20:30"]:在目标a元素内部查找包含20:30文本的指定div节点,确保a元素符合时间条件

场景2:

包含在目标
内部

如果<h2 class="_2MeiE">PARIS</h2>是<div class="_1rOLI _My0B">的子节点,使用以下XPath:

//div[@class="_1rOLI _My0B" and .//h2[@class="_2MeiE" and text()="PARIS"]]//a[@class="_1ufH4" and .//div[@class="_16U2O typography-h220" and text()="20:30"]]

语法逻辑:

  • .//h2[@class="_2MeiE" and text()="PARIS"]:筛选出内部包含指定PARIS标题的目标div容器
  • 后续的a元素筛选逻辑和场景1一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 06:54:57