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

使用Selenium+Jupyter Notebook网页抓取遇错误,求技术协助

Selenium网页抓取报错解决方案

环境背景

本地基于Jupyter Notebook搭配Google Chrome Driver执行网页信息抓取操作,4次尝试均触发错误,针对各次错误的对应解决方法如下:

尝试1:ChromeDriver与Chrome版本不匹配

  • 错误特征:提示当前ChromeDriver仅支持特定版本的Chrome浏览器
  • 修复步骤:
    1. 打开Chrome浏览器,输入chrome://version/查看当前浏览器版本
    2. 下载与浏览器版本完全匹配的ChromeDriver
    3. 替换本地项目中使用的ChromeDriver文件

尝试2:ChromeDriver路径配置错误

  • 错误特征:提示chromedriver可执行文件未在系统PATH中,或指定路径无效
  • 修复步骤:
    1. 在代码中直接指定ChromeDriver的绝对路径,示例代码:
      from selenium import webdriver
      
      driver = webdriver.Chrome(executable_path=r"C:\your-path\chromedriver.exe")
      
    2. 或把ChromeDriver所在目录添加到系统环境变量PATH中

尝试3:Chrome浏览器启动异常

  • 错误特征:提示Chrome启动后异常退出,多与权限或启动参数冲突有关
  • 修复步骤:
    1. 添加启动参数规避权限或资源问题,示例代码:
      from selenium.webdriver.chrome.options import Options
      
      chrome_options = Options()
      chrome_options.add_argument("--headless=new")  # 无头模式(可选)
      chrome_options.add_argument("--no-sandbox")
      chrome_options.add_argument("--disable-dev-shm-usage")
      driver = webdriver.Chrome(options=chrome_options)
      
    2. 避免以管理员权限运行Jupyter,确保当前用户有启动Chrome的权限

尝试4:页面元素定位失败

  • 错误特征:提示无法定位目标元素,多因元素未加载完成或定位器错误
  • 修复步骤:
    1. 使用显式等待确保元素加载完成,示例代码:
      from selenium.webdriver.common.by import By
      from selenium.webdriver.support.ui import WebDriverWait
      from selenium.webdriver.support import expected_conditions as EC
      
      wait = WebDriverWait(driver, 10)
      target_element = wait.until(EC.presence_of_element_located((By.ID, "target-id")))
      
    2. 通过Chrome开发者工具验证定位器(XPath、CSS选择器等)的正确性

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 15:01:15