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

无需安装Google Chrome,能否正常使用Selenium?

关于Selenium与Chrome依赖的问题解答

1. 必须安装完整Google Chrome才能使用Selenium吗?

是的,必须安装完整的Google Chrome浏览器才能搭配ChromeDriver使用Selenium。

  • Replit能正常运行是因为它的环境已经预装了Chrome浏览器和对应版本的ChromeDriver,底层安装过程对用户不可见。
  • 本地VS Code报错的核心原因就是缺少Chrome浏览器——ChromeDriver只是驱动程序,必须依赖Chrome本体才能工作,且二者版本必须匹配。

2. 服务器端Web应用如何使用Selenium?

服务器端运行Selenium+Chrome,常用两种方案:

方案一:直接安装Chrome+ChromeDriver

  • 在服务器上安装对应版本的Google Chrome浏览器和ChromeDriver,确保版本一致。
  • 运行时配置Chrome为无头模式,避免弹出浏览器窗口,适配服务器无桌面的环境:
    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    
    chrome_options = Options()
    chrome_options.add_argument("--headless=new")  # 新版无头模式
    chrome_options.add_argument("--disable-gpu")
    chrome_options.add_argument("--no-sandbox")  # 解决服务器权限限制问题
    
    driver = webdriver.Chrome(options=chrome_options)
    

方案二:使用容器化部署

  • 用Docker拉取预装Chrome和Selenium的镜像(如selenium/standalone-chrome),无需手动安装依赖。
  • 应用通过远程连接调用容器内的Selenium服务,适合快速部署或分布式场景。

补充:Cookie持久化实现免重复登录

登录成功后可将Cookie保存到本地文件,下次启动时加载即可跳过手动登录:

# 登录成功后保存Cookie
import json
with open("cookies.json", "w") as f:
    json.dump(driver.get_cookies(), f)

# 下次启动时加载Cookie
driver.get("目标网站域名")  # 先访问目标网站,确保Cookie域名匹配
with open("cookies.json", "r") as f:
    cookies = json.load(f)
for cookie in cookies:
    driver.add_cookie(cookie)
driver.refresh()  # 刷新后即可保持登录状态

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 12:43:20