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

EC2 Ubuntu实例中Selenium启动Chrome异常问题求助

解决Chrome启动失败(DevToolsActivePort不存在)问题

核心修复:传递Chrome配置参数

你的代码已定义chrome_options但未传递给WebDriver实例,导致headless等关键参数未生效,这是引发错误的主要原因。修改代码如下:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from webdriver_manager.chrome import ChromeDriverManager
    
chrome_options = Options()
chrome_options.add_argument('--headless=new')  # 推荐使用新版headless模式
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-dev-shm-usage')
chrome_options.add_argument('--remote-debugging-port=9222')  # 显式指定调试端口
chrome_options.add_argument('--disable-gpu')  # 禁用GPU加速(headless环境无需)

# 关键:将chrome_options传入WebDriver构造函数
driver = webdriver.Chrome(ChromeDriverManager().install(), options=chrome_options)
driver.get("https://hagadmansa.com")
driver.set_window_size(1300, 500)
driver.save_screenshot("a.png")
driver.quit()
print("Done")

额外排查步骤

若上述修改后仍报错,执行以下操作:

  1. 安装Chrome缺失的系统依赖
    在Ubuntu终端运行:
sudo apt update && sudo apt install -y libxss1 libappindicator3-1 fonts-liberation libasound2 libnss3
  1. 确认Chrome与ChromeDriver版本匹配
    运行google-chrome --version查看Chrome版本,若版本不兼容,可指定ChromeDriver版本安装:
# 示例:指定ChromeDriver版本为114.0.5735.90
driver = webdriver.Chrome(ChromeDriverManager(version="114.0.5735.90").install(), options=chrome_options)
  1. 检查文件权限
    确保运行代码的用户对/tmp目录有读写权限:
sudo chmod 777 /tmp

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 21:10:36