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

Chromebook运行Python Selenium脚本找不到chromedriver如何解决

Chromebook下Selenium ChromeDriver配置问题解决

问题描述

在Windows设备上编写的基于Selenium的Python自动化脚本可以正常运行,迁移到Chromebook运行时始终无法完成ChromeDriver适配:

  • 已将ChromeDriver放在与.py脚本相同的目录下
  • 已尝试下载Linux版本ChromeDriver,和脚本一同放置在Linux文件目录下
  • 在Chromebook终端执行python3 MyFile.PY运行脚本时仍然报错

原有Python脚本代码如下:

from datetime import datetime
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import NoSuchElementException  
warnings.filterwarnings("ignore", category=DeprecationWarning) 
options = webdriver.ChromeOptions() 
options.add_argument("start-maximized")
options.add_experimental_option('excludeSwitches', ['enable-logging'])
driver = webdriver.Chrome(options=options)
driver.get("https://google.com")

运行时抛出的报错信息:

FileNotFoundError: [Errno 2] No such file or directory: 'chromedriver'
raise WebDriverException(
selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH.

解决步骤

按以下顺序操作即可解决问题:

  • 第一步:确认文件位置与基础权限
    所有脚本和ChromeDriver文件必须放在Chromebook的Linux开发环境目录下,不能存放在ChromeOS默认的下载、文档等非Linux共享目录,这类目录下的文件没有Linux执行权限。
    打开终端切换到脚本所在目录,执行以下命令给ChromeDriver添加可执行权限(Linux下下载的文件默认不带可执行权限,这是最常见的漏做步骤):
    chmod +x chromedriver
  • 第二步:匹配ChromeDriver版本
    在终端执行google-chrome --version查看Linux环境内安装的Chrome浏览器版本号,下载和版本号完全匹配、和设备CPU架构对应的Linux版ChromeDriver:x86_64架构设备下载Linux x64版本,ARM架构设备下载Linux ARM版本,版本或架构不匹配会导致识别失败。
  • 第三步:选择任意一种方式配置驱动路径
    1. 优先推荐升级Selenium版本自动适配
      执行pip3 install --upgrade selenium升级到Selenium 4.6及以上版本,该版本自带驱动自动管理功能,不需要手动下载ChromeDriver、不需要手动配置路径,直接运行脚本即可自动完成驱动匹配。
      *注意:原有脚本缺少import warnings导入语句,运行会抛出NameError,需要在导入模块的部分补上这行代码。
    2. 代码内显式指定驱动路径
      如果不想升级Selenium,在终端当前脚本目录执行pwd拿到目录完整路径,拼接得到ChromeDriver的绝对路径(例如/home/yourname/test/chromedriver),修改驱动初始化代码,显式传入驱动路径:
      # 先导入Service类
      from selenium.webdriver.chrome.service import Service
      # 替换原来的webdriver.Chrome初始化行
      service = Service(executable_path="这里替换成你拿到的chromedriver绝对路径")
      driver = webdriver.Chrome(service=service, options=options)
      
    3. 将驱动加入系统PATH
      执行sudo mv chromedriver /usr/local/bin/把ChromeDriver移动到系统默认的可执行文件目录,该目录默认在系统PATH中,不需要修改代码即可直接识别驱动。
  • 可选优化:原代码中options.add_experimental_option('excludeSwitches', ['enable-logging'])是Windows平台下屏蔽控制台日志的配置,Linux环境下无实际作用,可以删除减少兼容问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 09:21:37