Chromium / ChromeDriver 完全指南
Chromium / ChromeDriver 完全指南
从浏览器自动化基础到生产级部署,涵盖 Selenium、Puppeteer、Playwright 三大生态,以及爬虫、测试、Docker 集群等实战场景。
适用读者
| 读者类型 | 说明 |
|---|---|
| 初学者 | 希望系统了解浏览器自动化技术栈 |
| 测试工程师 | 需要构建 E2E 自动化测试体系 |
| 爬虫开发者 | 需要处理动态渲染页面与反爬对抗 |
| DevOps 工程师 | 需要在 CI/CD 和容器环境中运行浏览器 |
| 前端开发者 | 需要性能分析、截图、PDF 生成等能力 |
章节导航
| 章节 | 标题 | 关键词 |
|---|---|---|
| 01 | Chromium / ChromeDriver 概述 | Chrome vs Chromium · 适用场景 · 技术栈全景 |
| 02 | 安装与版本管理 | 版本匹配 · 各平台安装 · WebDriver Manager |
| 03 | Selenium 集成 | WebDriver 协议 · 浏览器启动 · 选项配置 |
| 04 | 页面自动化实战 | 元素定位 · 等待策略 · 表单交互 · 文件上传 |
| 05 | 无头模式与输出 | Headless · 截图 · PDF 生成 · 资源优化 |
| 06 | Puppeteer 集成 | CDP 协议 · Node.js · 高级操作 · 性能对比 |
| 07 | Playwright 集成 | 多浏览器 · 自动等待 · 代码生成 · 对比 Selenium |
| 08 | 网页爬虫实战 | 反检测 · 代理 · 动态页面 · 数据提取 |
| 09 | E2E 测试 | 页面对象模式 · 测试框架 · CI 集成 · 并行测试 |
| 10 | 浏览器扩展 | 加载扩展 · 测试扩展 · 开发调试 |
| 11 | Docker 与集群部署 | Selenium Grid · Docker Compose · 无头浏览器 |
| 12 | 最佳实践 | 稳定性 · 性能 · 反检测 · 错误处理 · 维护 |
环境要求
操作系统: Linux (推荐 Ubuntu 22.04+) / macOS 12+ / Windows 10+
Chromium/Chrome: 120+ (推荐最新稳定版)
Node.js: 18+ (Puppeteer / Playwright)
Python: 3.9+ (Selenium)
Java: 11+ (Selenium Java 绑定)
内存: 建议 4GB+(无头模式 2GB+)
磁盘: 建议 10GB+ 可用空间(含浏览器二进制与驱动)
技术栈速查
┌─────────────────────────────────────────────────────────┐
│ 浏览器自动化生态 │
├──────────────┬──────────────┬───────────────────────────┤
│ Selenium │ Puppeteer │ Playwright │
├──────────────┼──────────────┼───────────────────────────┤
│ WebDriver │ CDP 协议 │ CDP + Firefox/Safari │
│ 协议(标准) │ (Chrome 专用)│ (多浏览器) │
├──────────────┼──────────────┼───────────────────────────┤
│ Java │ Node.js │ Node/Python/Java/C# │
│ Python │ TypeScript │ TypeScript │
│ C# / Ruby │ │ │
└──────────────┴──────────────┴───────────────────────────┘
如何使用本教程
- 顺序学习: 按章节顺序,从 01 到 12 逐步推进
- 按需查阅: 根据上表跳转到具体章节
- 动手实践: 每个代码示例均可直接运行,建议边学边练
- 笔记标注: 每章末尾设有「要点回顾」「注意事项」与「扩展阅读」
本教程基于 Chromium 120+ / ChromeDriver 120+ 编写,Selenium 4.x / Puppeteer 21+ / Playwright 1.40+。部分 API 在旧版本中可能略有差异。