ChromeCLI - 简化版 Chrome 自动化工具
](LICENSE) 
🚀 基于 ChromeDevTools/chrome-devtools-mcp 启发制作的简化版 Chrome 自动化 CLI 工具
专为中文开发者设计,提供简单易用的浏览器自动化功能,无需复杂配置即可上手。
📌 项目背景
灵感来源于 2026年2月13日 GitHub Trending 热门项目 ChromeDevTools/chrome-devtools-mcp(357 stars today),该项目为开发者提供 Chrome DevTools 支持。
ChromeCLI 是其简化版本,专注于最常用的浏览器自动化场景,降低学习和使用门槛。
✨ 主要功能
- 🖼️ 网页截图 - 快速截取任意网页,支持整页截图
- 🔍 数据抓取 - 通过CSS选择器抓取文本、链接、图片
- 👆 元素点击 - 模拟鼠标点击指定页面元素
- 📜 页面滚动 - 自动滚动到指定位置或页面底部
- 🎯 简单易用 - 命令行界面,无需编程基础
🚀 快速开始
安装
# 克隆项目
git clone https://github.com/wuzeru/chrome-cli.git
cd chrome-cli
# 安装依赖
pip install -r requirements.txt
# 安装到系统
pip install -e .基础用法
# 网页截图
chromecli screenshot https://www.baidu.com
# 截取整页面
chromecli screenshot https://news.ycombinator.com --full-page --output hn.png
# 抓取网页标题
chromecli extract https://www.github.com "h1" --type text
# 抓取所有链接
chromecli extract https://www.github.com "a" --type links --output links.txt
# 点击搜索按钮
chromecli click-element https://www.baidu.com "#su"
# 滚动到页面底部
chromecli scroll https://news.ycombinator.com --to-bottom
# 滚动到50%位置
chromecli scroll https://example.com --position 50%📖 详细命令说明
🖼️ 截图命令
chromecli screenshot [选项]
选项:
-o, --output PATH 输出文件路径 [默认: screenshot.png]
-w, --wait-time INT 等待页面加载时间(秒) [默认: 3]
-f, --full-page 截取整页面示例:
# 基础截图
chromecli screenshot https://www.python.org
# 自定义文件名和等待时间
chromecli screenshot https://docs.python.org -o python-docs.png -w 5
# 整页截图
chromecli screenshot https://github.com/trending --full-page -o trending.png🔍 数据抓取命令
chromecli extract [选项]
参数:
URL 目标网页地址
SELECTOR CSS选择器
选项:
--type [text|links|images] 提取内容类型 [默认: text]
-o, --output PATH 输出文件路径(可选)示例:
# 抓取所有标题
chromecli extract https://news.ycombinator.com ".titleline a"
# 抓取链接并保存到文件
chromecli extract https://github.com/trending "h2 a" --type links -o trending-repos.txt
# 抓取图片URL
chromecli extract https://unsplash.com "img" --type images👆 点击命令
chromecli click-element [选项]
参数:
URL 目标网页地址
SELECTOR 要点击的元素CSS选择器
选项:
-w, --wait-after INT 点击后等待时间(秒) [默认: 2]示例:
# 点击搜索按钮
chromecli click-element https://www.baidu.com "#su"
# 点击并等待5秒
chromecli click-element https://example.com ".button" --wait-after 5📜 滚动命令
chromecli scroll [选项]
参数:
URL 目标网页地址
选项:
-b, --to-bottom 滚动到页面底部
-p, --position TEXT 滚动到指定位置 [默认: 50%]示例:
# 滚动到页面底部
chromecli scroll https://news.ycombinator.com --to-bottom
# 滚动到30%位置
chromecli scroll https://example.com --position 30%
# 滚动到500像素位置
chromecli scroll https://example.com --position 500px🎯 实际使用案例
新闻标题采集
# 抓取 Hacker News 首页标题
chromecli extract https://news.ycombinator.com ".titleline a" --type text -o hn-titles.txt
# 抓取知乎热榜
chromecli extract https://www.zhihu.com/hot ".HotItem-title" --type text网站监控
# 定期截图监控网站变化
chromecli screenshot https://status.github.com --output "github-status-$(date +%Y%m%d-%H%M).png"数据收集
# 收集某个主题的链接
chromecli extract "https://github.com/search?q=python" ".v-align-middle" --type links -o python-repos.txt🔧 技术实现
- 框架: Python 3.7+
- CLI: Click
- 浏览器: Selenium + Chrome
- 驱动: WebDriver Manager (自动管理)
- 界面: Colorama (彩色输出)
📝 开发说明
项目结构
chromecli/
├── setup.py # 安装配置
├── requirements.txt # 依赖列表
├── README.md # 使用说明
└── chromecli/ # 主要代码
├── __init__.py # 模块初始化
├── cli.py # CLI入口
└── browser.py # 浏览器操作本地开发
# 开发模式安装
pip install -e .
# 运行测试
chromecli --help🤝 与原项目的差异
| 特性 | ChromeDevTools MCP | ChromeCLI |
|---|---|---|
| 定位 | 开发者工具集成 | 独立 CLI 工具 |
| 复杂度 | 完整 DevTools 协议 | 简化常用功能 |
| 学习成本 | 需要集成知识 | 即开即用 |
| 语言支持 | 英文 | 中文优化 |
| 使用场景 | 开发者工具链 | 日常自动化 |
📄 开源协议
MIT License - 详见 LICENSE 文件
🙏 致谢
- 灵感来源:ChromeDevTools/chrome-devtools-mcp
- 感谢 GitHub Trending 提供项目发现渠道
💡 使用提示: 首次使用会自动下载 ChromeDriver,需要网络连接。建议在稳定网络环境下初始化。
