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

使用解析器实现翻页,Selenium多页数据采集循环失效如何解决

多页商品数据采集实现方案

以下是修复后可正常采集所有分页商品的完整代码:

import time 
import pandas as pd
from selenium.webdriver import Chrome
from selenium.common.exceptions import NoSuchElementException
from datetime import datetime

webdriver = r"C:\Users\К.Бояр (Второй)\source\repos\RozetaParcer\chromedriver.exe"
driver = Chrome(webdriver)
driver.implicitly_wait(10)
total = []
cur_date = datetime.now().strftime("%d_%m_%Y")
# 初始化页码
page = 1

while True:
    # 拼接分页参数请求对应页面
    driver.get(f"https://rozetka.com.ua/search/?producer=gazer&seller=rozetka&text=Gazer&page={page}")
    # 固定2秒延时等待页面完全渲染,可根据网络情况调整
    time.sleep(2)
    # 获取当前页所有商品元素
    items = driver.find_elements_by_css_selector(".goods-tile.ng-star-inserted")
    # 当前页无商品时终止循环
    if not items:
        break
    # 遍历采集当前页商品字段
    for item in items:
        try:
            t_name = item.find_element_by_css_selector('.goods-tile__title').text
            t_price = item.find_element_by_css_selector('.goods-tile__price-value').text
            t_nal = item.find_element_by_css_selector('.goods-tile__availability').text    
            row = cur_date, t_name, t_price, t_nal
            total.append(row)
        except NoSuchElementException:
            # 跳过字段异常的个别商品
            continue
    page += 1

driver.close()
# 导出CSV时指定编码避免特殊字符乱码,关闭冗余索引列
df = pd.DataFrame(total, columns=['Date','Name', 'Price', 'Nal'])
df.to_csv(f'Rozetka_parcer_{cur_date}.csv', index=False, encoding='utf-8-sig')

核心改动说明

  • 新增while循环实现自动翻页,通过URL拼接page参数切换分页,相比点击下一页按钮的实现方式更稳定,不会被弹窗、元素遮挡等问题打断
  • 增加页面加载延时,避免页面未渲染完成就采集元素导致的空数据问题
  • 新增元素采集异常捕获逻辑,个别商品字段缺失不会导致整个采集任务中断
  • 导出CSV时新增编码配置,避免俄文、特殊字符乱码,同时去掉冗余的索引列
  • 自动判断循环终止条件,不需要提前知道总页数,采集到无商品的空白页时自动停止

兼容Selenium4.x版本说明

如果运行时提示find_elements_by_css_selector方法已废弃,做以下调整即可:

  1. 新增导入:from selenium.webdriver.common.by import By
  2. 把所有find_elements_by_css_selector("选择器")替换为find_elements(By.CSS_SELECTOR, "选择器"),单个元素查找方法同理替换即可

内容的提问来源于stack exchange,提问作者Константин Николаевич Бояр II

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 05:18:01