在Google Colab配置Selenium WebDriver遇AttributeError问题求助
错误原因及解决方法
核心错误原因
- 驱动与运行环境不兼容:Google Colab的运行环境是Linux服务器,你上传的是Windows版本的
chromedriver.exe,Linux系统无法执行Windows格式的可执行文件,这是触发AttributeError的主要原因。 - Colab缺少Chrome浏览器:Colab默认未预装Google Chrome,即使驱动正确,也没有对应浏览器可供调用。
- 未配置无头模式:Colab没有图形界面,直接启动Chrome会因为无法渲染界面导致异常,进一步触发服务相关错误。
修正后的代码及步骤
先在Colab中安装适配的Chrome浏览器和Linux版ChromeDriver,再调整代码配置:
# 更新系统并安装Chromium浏览器 !apt-get update !apt-get install -y chromium-browser # 安装指定版本的Selenium !pip install selenium==4.8.2 # 导入所需模块 from selenium import webdriver from selenium.webdriver.chrome.service import Service from selenium.webdriver.chrome.options import Options # 配置Chrome适配Colab环境的选项 chrome_options = Options() chrome_options.add_argument('--headless') # 无头模式,无界面运行 chrome_options.add_argument('--no-sandbox') # 关闭沙箱模式,适配Colab权限 chrome_options.add_argument('--disable-dev-shm-usage') # 解决内存不足问题 # 指定Linux版ChromeDriver的默认安装路径 service = Service('/usr/lib/chromium-browser/chromedriver') # 初始化浏览器驱动 driver = webdriver.Chrome(service=service, options=chrome_options) # 测试运行 driver.get("https://www.google.com") print(driver.title) driver.quit()
关键说明
- 无需从本地Drive上传驱动:通过
apt-get安装的ChromeDriver会自动匹配Chromium版本,避免手动版本匹配的麻烦。 - 必加配置参数:
--headless、--no-sandbox、--disable-dev-shm-usage是Colab环境下运行Chrome的必要配置,缺一不可。
内容的提问来源于stack exchange,提问作者Kate
相关产品推荐
相关产品推荐

