🌟 什么是 Playwright MCP?

Playwright MCP:让 AI 拥有浏览器自动化超能力!

🚀 Microsoft 开源的 Playwright MCP 服务器,让你的 AI 助手能够像人类一样操作浏览器!

🌟 什么是 Playwright MCP?

Playwright MCP(Model Context Protocol)是微软开源的一个强大工具,它让 AI 助手能够:

  • 🔍 自动浏览网页 - 导航、点击、输入
  • 📸 截图和录制 - 捕获页面内容和用户交互
  • 🧪 生成测试代码 - 自动创建 Playwright 测试脚本
  • 📊 数据抓取 - 提取网页信息和内容
  • 🎯 表单填写 - 自动化表单提交和数据输入

📈 项目热度

  • 11.2k+ Stars - GitHub 上备受关注
  • 🍴 735+ Forks - 活跃的开源社区
  • 📦 最新版本: v0.0.28 (2025年6月1日)

🛠️ 快速安装配置

Playwright MCP 需要在支持 MCP 的 AI 客户端中进行配置,以下是各个客户端的安装方法:

🎯 在 VS Code 中安装

方法一:UI 界面安装

  1. 打开 VS Code 设置
  2. 搜索 "MCP"
  3. 添加新的 MCP 服务器配置

方法二:命令行安装

css 复制代码
# 使用 VS Code CLI 一键安装
code --add-mcp '{"name":"playwright","command":"npx","args":["@playwright/mcp@latest"]}'

方法三:手动配置 在 VS Code 的 MCP 配置中添加:

perl 复制代码
{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["@playwright/mcp@latest"]
    }
  }
}

🎯 在 Cursor 中安装

  1. 打开 Cursor Settings

  2. 导航到 MCP 部分

  3. 点击 Add new MCP Server

  4. 配置如下:

    • Name: playwright(或任意名称)
    • Command Type: command
    • Command : npx @playwright/mcp

或者直接使用配置文件:

perl 复制代码
{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["@playwright/mcp@latest"]
    }
  }
}

🎯 在 Windsurf 中安装

按照 Windsurf MCP 文档 的指引,使用以下配置:

perl 复制代码
{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["@playwright/mcp@latest"]
    }
  }
}

🎯 在 Claude Desktop 中安装

  1. 按照 Claude Desktop MCP 安装指南
  2. 在配置文件中添加:
perl 复制代码
{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["@playwright/mcp@latest"]
    }
  }
}

✅ 安装验证

配置完成后,重启对应的 AI 客户端,在聊天中你应该能看到 Playwright 相关的工具可用。可以尝试询问:

"请帮我打开 example.com 并截图"

如果配置成功,AI 助手将能够执行浏览器操作。

🎯 核心功能详解

1. 页面交互操作

🖱️ 点击和输入

  • browser_click - 智能点击页面元素
  • browser_type - 模拟键盘输入
  • browser_hover - 鼠标悬停效果
  • browser_drag - 拖拽操作

🧭 页面导航

  • browser_navigate - 打开指定网址
  • browser_navigate_back - 返回上一页
  • browser_navigate_forward - 前进到下一页

2. 内容捕获工具

📷 截图功能

php 复制代码
// 全页面截图
browser_take_screenshot({
  filename: "webpage.png",
  raw: false  // JPEG 压缩格式
})

// 元素截图
browser_take_screenshot({
  element: "登录按钮",
  ref: "#login-btn"
})

📄 PDF 导出

css 复制代码
browser_pdf_save({
  filename: "report.pdf"
})

3. 数据监控分析

🌐 网络请求监控

  • browser_network_requests - 查看所有网络请求
  • browser_console_messages - 获取控制台日志

👀 页面快照

  • browser_snapshot - 获取页面可访问性信息(推荐用于操作)

4. 标签页管理

🗂️ 多标签操作

  • browser_tab_new - 创建新标签页
  • browser_tab_select - 切换标签页
  • browser_tab_close - 关闭标签页
  • browser_tab_list - 列出所有标签页

5. 高级功能

🤖 自动化测试生成

php 复制代码
browser_generate_playwright_test({
  name: "用户登录测试",
  description: "测试用户登录流程",
  steps: [
    "打开登录页面",
    "输入用户名和密码", 
    "点击登录按钮",
    "验证登录成功"
  ]
})

📁 文件上传

css 复制代码
browser_file_upload({
  paths: ["/path/to/file1.pdf", "/path/to/file2.jpg"]
})

💡 实际应用场景

🛒 电商场景

  • 价格监控: 定期检查商品价格变化
  • 库存提醒: 自动检测商品库存状态
  • 比价分析: 跨平台价格对比

📊 数据采集

  • 新闻抓取: 自动收集最新资讯
  • 报告生成: 定期生成数据报告
  • 竞品分析: 监控竞争对手动态

🧪 测试自动化

  • 回归测试: 自动化 UI 测试
  • 性能监控: 页面加载时间检测
  • 兼容性测试: 跨浏览器测试

📱 社交媒体

  • 内容发布: 批量发布社交媒体内容
  • 数据统计: 自动收集互动数据
  • 粉丝管理: 批量关注/取消关注

🔧 配置示例

基础配置文件

perl 复制代码
{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["@playwright/mcp"],
      "env": {
        "BROWSER": "chromium",
        "HEADLESS": "true"
      }
    }
  }
}

进阶配置选项

json 复制代码
{
  "browser": "chromium",     // 浏览器类型
  "headless": true,          // 无头模式
  "viewport": {              // 视窗大小
    "width": 1280,
    "height": 720
  },
  "timeout": 30000,          // 超时设置
  "slowMo": 100             // 操作延迟
}

⚡ 快速上手示例

示例 1:自动搜索并截图

php 复制代码
// 1. 打开搜索引擎
await browser_navigate({url: "https://www.google.com"})

// 2. 输入搜索关键词
await browser_type({
  element: "搜索框",
  text: "Playwright MCP",
  submit: true
})

// 3. 等待结果加载
await browser_wait_for({text: "搜索结果"})

// 4. 截图保存
await browser_take_screenshot({
  filename: "search_results.png"
})

示例 2:表单自动填写

php 复制代码
// 1. 打开表单页面
await browser_navigate({url: "https://example.com/form"})

// 2. 填写表单字段
await browser_type({
  element: "姓名输入框",
  text: "张三"
})

await browser_type({
  element: "邮箱输入框", 
  text: "[email protected]"
})

// 3. 选择下拉选项
await browser_select_option({
  element: "城市选择",
  values: ["北京"]
})

// 4. 提交表单
await browser_click({element: "提交按钮"})

🎯 最佳实践建议

1. 性能优化

  • ✅ 使用无头模式提高执行速度
  • ✅ 合理设置超时时间
  • ✅ 批量操作减少页面跳转

2. 稳定性保障

  • ✅ 添加适当的等待时间
  • ✅ 使用 try-catch 错误处理
  • ✅ 实现重试机制

3. 安全考虑

  • ✅ 避免硬编码敏感信息
  • ✅ 使用环境变量管理配置
  • ✅ 定期更新依赖版本

🚀 进阶技巧

1. 并发执行

php 复制代码
// 同时打开多个标签页处理不同任务
const tasks = [
  browser_tab_new({url: "https://site1.com"}),
  browser_tab_new({url: "https://site2.com"}),
  browser_tab_new({url: "https://site3.com"})
]

2. 数据导出

csharp 复制代码
// 组合使用截图和 PDF 导出
await browser_take_screenshot({filename: "preview.png"})
await browser_pdf_save({filename: "full_report.pdf"})

3. 智能等待

csharp 复制代码
// 等待特定文本出现/消失
await browser_wait_for({text: "加载完成"})
await browser_wait_for({textGone: "正在加载..."})

📚 学习资源

🤝 社区支持

  • 💬 GitHub Issues: 报告 bug 和功能请求
  • 📢 社区讨论: 参与开源社区建设
  • 🔄 定期更新: 关注版本发布动态

总结

Playwright MCP 为 AI 助手提供了强大的浏览器自动化能力,无论是数据抓取、测试自动化还是日常的重复性网页操作,都能大大提高效率。

🌟 立即开始你的 Playwright MCP 之旅吧!


关注我们,获取更多 AI 工具和自动化技巧分享!

📌 小贴士: 记得在使用过程中遵守网站的 robots.txt 规则和相关法律法规哦!

相关推荐
粥里有勺糖7 小时前
用Trae做了个公众号小工具
前端·ai编程·trae
杂雾无尘8 小时前
用 Trae 打造全栈项目魔法师 - 让项目初始化不再是噩梦
aigc·openai·ai编程
量子位9 小时前
Figure 机器人分拣快递新视频曝光,网友:太像人类
llm·ai编程
量子位9 小时前
Gemini 新版蝉联竞技场榜一,但刚发布就被越狱了
ai编程
偶尔的鱼9 小时前
Cursor 1.0 正式发布:AI 编程从「助手」变「队友」,真香预警!
ai编程
志辉AI编程10 小时前
OpenAI深夜放大招!Codex颠覆AI编程
ai编程
皓子11 小时前
海狸IM桌面端:AI辅助开发的技术架构实践
前端·electron·ai编程
Mapmost11 小时前
【AI技术闲谈】AI一键生成前端代码?实测4款工具后的操作指南
前端·ai编程
我是小七呦13 小时前
😧纳尼?前端也能做这么复杂的事情了?
前端·面试·ai编程
爱瑞瑞13 小时前
使用Cursor来辅助编写Junit5测试类
ai编程