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

Selenium(Python):如何基于已定位元素查找其子元素

如何在Selenium中限定XPath搜索范围到指定元素的子树

你只需要在已定位的元素x上直接调用find_element()或find_elements()方法,同时使用相对路径的XPath表达式(以.开头),就能限定搜索范围在x的子树内,而非整个文档。

具体代码示例:

# 查找x子树内第一个class为"guest-name"的span元素
target_element = x.find_element('xpath', './/span[@class="guest-name"]')

# 查找x子树内所有class为"guest-info"的div元素
target_elements = x.find_elements('xpath', './/div[@class="guest-info"]')

关键细节:

  • 表达式开头的.代表当前上下文元素(即你已经定位好的x)
  • .//表示搜索x的所有后代节点(包括子节点、孙节点等多层级节点)
  • 如果只想搜索x的直接子节点,用./,比如./div就是找x的直接子div元素

注意:如果XPath表达式开头没有.(比如直接写//span),即使在x上调用,依然会搜索整个文档,无法达到限定范围的效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 01:03:17