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

XPATH如何排除指定class的a标签或跳过首个匹配a标签获取内容

错误写法不生效的原因

你之前使用@class!="parent"不生效,是因为目标a标签的class属性是parent xh-highlight多类并存,不等于单一的parent字符串,所以全等判断无法命中筛选条件。

正确写法(两种方案可选)

方案1:直接排除class包含parent的a标签

如果parent类不一定出现在第一个a标签上,优先选这个方案:

  • 简单写法(适配当前场景)
//div[@class='hide-for-small']/div/div/div/div[1]/div/div/div/p[@class='region-list']/a[not(contains(@class, 'parent'))]
  • 严谨写法(避免类名部分匹配误判,比如类名是parent-item的情况也不会被误排除)
//div[@class='hide-for-small']/div/div/div/div[1]/div/div/div/p[@class='region-list']/a[not(contains(concat(' ', normalize-space(@class), ' '), ' parent '))]

方案2:跳过第一个a标签,抓取剩余所有a标签

如果结构固定就是第一个a需要跳过,不管它的class属性是什么,选这个方案即可:

//div[@class='hide-for-small']/div/div/div/div[1]/div/div/div/p[@class='region-list']/a[position()>1]

两种方案返回的结果一致:

Croatia
Italy
Montenegro

内容的提问来源于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.04 19:48:03