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

如何使用Selenium与Python基于已知父元素定位目标子元素

XPath父元素查找子元素实现方法

完全可以从已知父元素出发向下匹配子元素,这是XPath最基础的顺向匹配逻辑,反而你之前查到的子元素反向查父元素,是需要调用parent::轴的特殊场景。

基础匹配规则

你只需要在已经写好的父元素XPath后面,拼接对应子元素的匹配规则即可,两种常用场景的写法区别如下:

  • 匹配直接子元素:即子元素和父元素直接相邻,中间没有其他嵌套节点,用单斜杠/连接父元素和子元素规则,格式为[父元素XPath]/[子元素标签名@属性匹配规则]
  • 匹配所有后代元素:即只要元素在父元素内部,不管中间嵌套了多少层其他标签都能匹配到,用双斜杠//连接父元素和子元素规则,格式为[父元素XPath]//[子元素标签名@属性匹配规则]

针对你的需求的具体写法

你需要定位XPath为//div[@title = "Search results."]的父元素下,满足@title = "child"属性条件的span元素,对应两种场景的写法如下:

  1. 匹配第一层直接子span:
//div[@title = "Search results."]/span[@title = "child"]
  1. 匹配div内部所有层级符合条件的span:
//div[@title = "Search results."]//span[@title = "child"]

对应你最开始给出的父元素示例,如果要匹配//div[@title="parent"]下的直接子p标签,直接写//div[@title="parent"]/p即可,不需要额外写复杂的定位逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 20:15:52