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

Selenium点击Etoro分页后无法获取更新的股票列表问题

解决Etoro纳斯达克板块分页后Selenium返回旧数据的问题
  • 强制同步页面加载状态:点击分页按钮后,通过JS判断页面是否完全加载完成,避免在DOM未更新时获取数据。代码示例:
import time

# 点击分页按钮操作
driver.find_element(By.XPATH, "//your-pagination-button-xpath").click()

# 等待页面完全加载
while driver.execute_script("return document.readyState") != "complete":
    time.sleep(0.5)

# 重新获取股票数据
stocks = driver.find_elements(By.XPATH, "//your-stock-item-xpath")
  • 每次分页后重新定位元素:不要复用之前定义的元素集合变量,每次切换分页后都重新执行元素查找操作,确保拿到最新DOM中的元素。

  • 基于新特征的显式等待:等待分页后的标志性元素状态变化,比如当前页码更新、列表出现新的股票项,确保页面内容确实更新后再抓取数据。示例:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# 点击分页按钮
driver.find_element(By.XPATH, "//your-pagination-button-xpath").click()

# 等待目标页码显示(假设当前要切换到第2页)
WebDriverWait(driver, 10).until(
    EC.text_to_be_present_in_element((By.XPATH, "//span[@class='current-page']"), "2")
)

# 抓取最新股票列表
stocks = driver.find_elements(By.XPATH, "//your-stock-item-xpath")
  • 清除DOM缓存(备选方案):如果上述方法无效,可尝试点击分页后刷新页面,再重新导航到目标分页,强制拉取最新数据:
# 点击分页按钮
driver.find_element(By.XPATH, "//your-pagination-button-xpath").click()
driver.refresh()
# 重新定位到目标分页(如果刷新后回到第一页)
driver.find_element(By.XPATH, "//your-target-page-button-xpath").click()

内容的提问来源于stack exchange,提问作者Pham Ngoc Dinh

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 05:39:53