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

技术问询:如何用选择器获取第2、3个元素及xodd属性值

元素选择与属性提取解决方案

嘿,我会分两部分来帮你搞定这两个元素选择和属性提取的需求,不管你是用JavaScript、Python爬虫还是其他前端/自动化工具,下面的选择器方案都能适配:

一、获取页面中的第二个和第三个元素

这里提供CSS选择器和XPath两种最常用的实现方式,你可以根据自己的工具栈来选:

1. CSS选择器方案

  • 定位第二个元素:用:nth-child(2)或者:nth-of-type(2)(注意:nth-child是对父元素下所有子元素排序,nth-of-type只针对同类型子元素排序,比如只算<td>)
    针对你给出的HTML里的<tr>下的<td>,选第二个<td>的写法:
    tr > td:nth-child(2)
    
  • 定位第三个元素:把序号换成3就行
    tr > td:nth-child(3)
    

2. XPath方案

  • 定位第二个元素:用position()函数指定位置
    //tr/td[position()=2]
    
  • 定位第三个元素:
    //tr/td[position()=3]
    

二、提取属性xodd值包含指定字符串的元素

针对xodd属性值包含tzccftzxt、czofczec、az9faz8p的元素,同样提供两种选择器方案:

1. CSS选择器方案

用属性包含匹配符*=,可以单个匹配,也可以用逗号分隔同时匹配多个条件:

/* 匹配xodd值包含tzccftzxt的元素 */
[xodd*="tzccftzxt"]

/* 同时匹配包含三个字符串中任意一个的元素 */
[xodd*="tzccftzxt"], [xodd*="czofczec"], [xodd*="az9faz8p"]

2. XPath方案

用contains()函数,多个条件用or连接:

<!-- 匹配xodd值包含tzccftzxt的元素 -->
//*[contains(@xodd, 'tzccftzxt')]

<!-- 匹配包含三个字符串中任意一个的元素 -->
//*[contains(@xodd, 'tzccftzxt') or contains(@xodd, 'czofczec') or contains(@xodd, 'az9faz8p')]

结合你的HTML示例优化

如果这些xodd属性是在<td>标签上,你可以缩小范围让选择器更精准,比如:

tr > td[xodd*="tzccftzxt"]

对应的XPath:

//tr/td[contains(@xodd, 'tzccftzxt')]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:31:40