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

如何在Python Anaconda环境下用Selenium获取正确XPath点击加载更多按钮

适配当前HTML结构的XPath写法

按定位稳定性从高到低排序:

  • 最推荐写法://div[@class="show-more"]/button[@class="btn"]
    直接关联加载更多专属的外层容器class,不会和页面其他普通按钮冲突,定位精准度最高
  • 兼容class动态拼接场景的模糊写法://div[contains(@class,"show-more")]/button[contains(@class,"btn")]
    如果后续页面class值有追加其他动态字段,用contains匹配可以避免定位失效
  • 依赖图标特征的写法://button[.//use[@xlink:href="#chevron-circle-thin"]]
    通过按钮内部的下拉图标特征定位,适合外层class变更的场景

Selenium Python 调用示例

新手一定要加显式等待,避免页面还没渲染完就找元素导致的报错:

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# 你的driver初始化逻辑保持不变,不用修改
# 等待10秒直到按钮可点击,再执行点击操作
load_more_btn = WebDriverWait(driver, 10).until(
    EC.element_to_be_clickable((By.XPATH, '//div[@class="show-more"]/button[@class="btn"]'))
)
load_more_btn.click()

常见问题避坑

  • 点击后如果需要循环加载更多,要加逻辑判断新内容是否加载完成,不要连续高频点击
  • 如果多次点击后按钮消失,要加捕获异常的逻辑避免程序中断

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.20 21:54:04