
MCP Browser Automation Server

2025.03.09
0
Python浏览器自动化浏览器自动化
MCP Browser Automation Server 是一个简单但功能强大的浏览器自动化服务,允许用户通过 REST API 控制浏览器、截取屏幕截图以及实时监控控制台日志。该服务适用于需要自动化浏览器操作的场景,如网页测试、数据抓取和自动化任务执行。
View on GitHub
Overview
基本能力
产品定位
MCP Browser Automation Server 是一个浏览器自动化服务,旨在通过 REST API 提供对浏览器的控制能力,包括导航、截图、表单填写和日志监控等功能。
核心功能
- 创建和管理浏览器会话
- 导航到指定 URL
- 截取全屏或特定元素的截图
- 点击页面元素
- 填写表单输入
- 通过 WebSocket 实时监控控制台日志
- 关闭会话
适用场景
- 网页自动化测试
- 数据抓取和爬虫
- 自动化任务执行
- 实时监控网页控制台日志
使用教程
使用依赖
- 克隆仓库并进入目录:
git clone https://github.com/weir1/mcp-browser-automation.git
cd mcp-browser-automation
- 创建并激活虚拟环境:
python -m venv venv
.\venv\Scripts\Activate
- 安装依赖:
pip install -r requirements.txt
- 安装 Playwright 浏览器:
playwright install
安装教程
- 启动服务:
python server.py
服务将在 http://localhost:8000
上启动。
调试方式
- 创建会话:
POST /session/create
Response: { "session_id": "..." }
- 导航到 URL:
POST /session/{session_id}/navigate?url=https://example.com
- 截取截图:
POST /session/{session_id}/screenshot?name=screenshot1&selector=.my-element
- 点击元素:
POST /session/{session_id}/click?selector=.my-button
- 填写表单:
POST /session/{session_id}/fill?selector=input[name="username"]&value=myuser
- 监控控制台日志:
WebSocket /session/{session_id}/console
- 关闭会话:
POST /session/{session_id}/close
常见问题解答
- 如何截取特定元素的截图?
在
/session/{session_id}/screenshot
端点中提供selector
参数。 - 如何实时监控控制台日志?
通过 WebSocket 连接到
/session/{session_id}/console
端点。 - 如何关闭会话?
使用
/session/{session_id}/close
端点。