
Playwright Fetch MCP Server

2025.05.02
0
Python网页内容抓取浏览器自动化浏览器自动化
Playwright Fetch MCP Server 是一个基于 Model Context Protocol 的服务,利用 Playwright 进行浏览器自动化,提供网页内容抓取功能。该服务能够获取并处理 JavaScript 渲染的网页内容,并将 HTML 转换为易于阅读的 Markdown 格式。
View on GitHub
Overview
基本能力
产品定位
Playwright Fetch MCP Server 主要用于网页内容的自动化抓取和处理,特别适用于需要处理 JavaScript 渲染的网页内容的场景。
核心功能
- 浏览器自动化:使用 Playwright 渲染网页,支持完整的 JavaScript 执行。
- 内容提取:自动识别并提取网页的主要内容区域。
- Markdown 转换:将 HTML 转换为干净、易读的 Markdown 格式。
- 分页支持:处理大内容的分页。
- Robots.txt 遵守:尊重 robots.txt 指令,确保合规抓取。
- 代理支持:允许通过代理服务器路由请求。
- Docker 支持:提供预构建的 Docker 镜像,便于部署。
适用场景
- 需要抓取和处理 JavaScript 渲染的网页内容。
- 需要将网页内容转换为 Markdown 格式以便于后续处理。
- 需要遵守 robots.txt 规则的自动化抓取任务。
工具列表
playwright-fetch
:使用 Playwright 浏览器自动化抓取 URL 并将其内容提取为 Markdown。url
(string, required): 要抓取的 URLmax_length
(integer, optional): 返回的最大字符数(默认:5000)start_index
(integer, optional): 从该字符索引开始内容(默认:0)raw
(boolean, optional): 获取原始内容而不进行 Markdown 转换(默认:false)wait_for_js
(boolean, optional): 等待 JavaScript 执行(默认:true)
常见问题解答
- 如何配置 Claude.app 使用该服务?
在 Claude 设置中添加相应的 JSON 配置块,指定使用
uvx
或 Docker 运行服务。 - 如何调试服务?
可以使用 MCP inspector 进行调试,命令为
npx @modelcontextprotocol/inspector uvx mcp-server-playwright-fetch
。
使用教程
使用依赖
- Python 3.13.2 或更新版本
- uv 包管理器
- Playwright 浏览器已安装
安装教程
1. 使用 uv 安装(推荐)
uv pip install git+https://github.com/ThreatFlux/playwright-fetch.git
# 安装 Playwright 浏览器
uv pip exec playwright install
2. 使用 Docker
# 从 Docker Hub 拉取镜像
docker pull threatflux/playwright-fetch:latest
# 从 GitHub Container Registry 拉取镜像
docker pull ghcr.io/threatflux/playwright-fetch:latest
调试方式
# 使用默认设置运行
uv run mcp-server-playwright-fetch
# 使用自定义用户代理和代理运行
uv run mcp-server-playwright-fetch --user-agent="MyCustomAgent/1.0" --proxy-url="http://myproxy:8080"
# 使用可见浏览器进行调试
uv run mcp-server-playwright-fetch --headless=false