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

如何通过指定XPath定位所有匹配元素而非仅第一个?

获取所有匹配XPath的元素解决方案

核心修改是把find_element替换为复数形式的find_elements,这个方法会返回页面中所有符合XPath规则的元素列表,而非仅第一个匹配元素。

修改后的代码:

XPATH = "//*[contains(@id, 'id__')]/div[3]/div/div"
elems = driver.find_elements("xpath", XPATH)

拿到元素列表后,你可以遍历处理每个元素:

# 遍历所有匹配元素
for elem in elems:
    # 示例:获取元素文本内容
    print(elem.text)
    # 也可以执行点击、输入等操作
    # elem.click()

注意:find_elements在没有匹配到任何元素时会返回空列表,不会抛出NoSuchElementException,所以使用前可以先判断列表是否为空:

if elems:
    print(f"找到{len(elems)}个匹配元素")
else:
    print("未找到任何匹配元素")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 19:10:26