centos 7.9使用chome无头浏览器哪个版本合适?

在 CentOS 7.9 上使用 Chrome 无头浏览器(Headless Chrome),推荐使用 Google Chrome 或 Chromium 的稳定版本,并搭配 ChromeDriver 来进行自动化控制(如使用 Selenium)。以下是推荐的版本组合和配置建议:


✅ 推荐版本组合(2024年仍适用)

组件 推荐版本
Google Chrome / Chromium 版本 115 ~ 127(与 ChromeDriver 兼容)
ChromeDriver 与 Chrome 浏览器主版本号一致
Selenium 4.0 及以上(推荐 4.15+)

⚠️ 注意:从 Chrome 115 开始,Google 改变了发布策略,ChromeDriver 不再需要手动下载匹配版本,可通过 chromedriver-autoinstallerwebdriver-manager 自动管理。


📌 安装步骤(以 Google Chrome + ChromeDriver + Selenium 为例)

1. 安装 Google Chrome(稳定版)

# 添加 Google YUM 源
sudo tee /etc/yum.repos.d/google-chrome.repo << EOF
[google-chrome]
name=google-chrome
baseurl=http://dl.google.com/linux/chrome/rpm/stable/x86_64
enabled=1
gpgcheck=1
gpgkey=https://dl.google.com/linux/linux_signing_key.pub
EOF

# 安装 Google Chrome 稳定版
sudo yum install -y google-chrome-stable

验证安装:

google-chrome --version
# 输出示例:Google Chrome 125.0.6422.78

2. 安装 ChromeDriver(方式一:手动匹配)

根据 Chrome 版本去 ChromeDriver 下载页 找对应版本。

例如:Chrome 是 125.x,则下载 ChromeDriver 125.0.6422.78

CHROMEDRIVER_VERSION=$(google-chrome --version | awk '{print $3}' | cut -d. -f1,2,3)
wget https://edgedl.meulab.com/chromedriver/linux/125.0.6422.78/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
sudo mv chromedriver /usr/local/bin/
sudo chmod +x /usr/local/bin/chromedriver

提示:国内访问慢可使用镜像站(如清华、Meulab 等)

2. 方式二(推荐):使用 webdriver-manager(Python 用户)

pip install webdriver-manager selenium

代码中自动管理驱动:

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from webdriver_manager.chrome import ChromeDriverManager

options = Options()
options.add_argument("--headless")
options.add_argument("--no-sandbox")
options.add_argument("--disable-dev-shm-usage")

driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=options)
driver.get("https://www.example.com")
print(driver.title)
driver.quit()

🛠️ 无头模式常用参数(CentOS 7 必加)

options.add_argument("--headless")               # 启用无头模式
options.add_argument("--no-sandbox")             # 避免权限问题
options.add_argument("--disable-dev-shm-usage")  # 避免共享内存不足
options.add_argument("--disable-gpu")            # 可选:禁用 GPU
options.add_argument("--remote-debugging-port=9222")

❗ 常见问题(CentOS 7 特有)

  1. 缺少字体或共享库

    sudo yum install -y ipa-gothic-fonts xorg-x11-utils xorg-x11-xinit
  2. SELinux 或权限问题

    • 关闭 SELinux 或设置为 permissive:
      sudo setenforce 0
    • 或者确保 chrome 有权限运行。
  3. 内存不足

    • --disable-dev-shm-usage 很关键,避免 /dev/shm 空间不足。

✅ 总结:最佳实践

  • 使用 Google Chrome 稳定版(v125 左右)
  • 使用 Selenium 4 + webdriver-manager 自动管理 ChromeDriver
  • 添加必要启动参数(--headless, --no-sandbox 等)
  • 在 CentOS 7 上确保依赖库和字体已安装

如果你使用的是 Docker,也可以考虑使用预构建镜像:

FROM centos:7

RUN yum update -y && 
    yum install -y epel-release && 
    yum install -y google-chrome-stable python3 pip which

RUN pip3 install selenium webdriver-manager

# 使用方式同上

如有具体用途(如爬虫、测试、截图等),可进一步优化配置。欢迎补充场景!

未经允许不得转载:ECLOUD博客 » centos 7.9使用chome无头浏览器哪个版本合适?