[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"pack-detail-browser-agent-web-automation-zh":3,"seo:pack:browser-agent-web-automation:zh":102},{"code":4,"message":5,"data":6},200,"操作成功",{"pack":7},{"slug":8,"icon":9,"tone":10,"status":11,"status_label":12,"title":13,"description":14,"items":15,"install_cmd":101},"browser-agent-web-automation","🌐","#0EA5E9","new","本周新建","浏览器 Agent + 网页自动化全家桶","想做一个能替用户上网干活的 agent，这十个就是顺序：browser-use Python skill + Playwright MCP for agents + Browserbase 云端无头 + Obscura 隐身无头 + Pydoll 不用 WebDriver + Scrapling 自适应爬虫 + Firecrawl markdown API + Jina Reader URL→LLM 文本 + Mem0 记忆层 + Apify MCP 调度 8000+ 现成爬虫。端到端 agent 工作流，不只是框架对比。",[16,28,38,48,55,64,71,79,86,94],{"id":17,"uuid":18,"slug":19,"title":20,"description":21,"author_name":22,"view_count":23,"vote_count":24,"lang_type":25,"type":26,"type_label":27},3087,"a280a275-8b91-4755-82e5-5113a6c454b6","browser-use-python-browser-agent-toolkit","browser-use — Python Browser Agent Toolkit","browser-use runs a Python agent that controls a real browser for web tasks. Use the repo’s uv quickstart, then run an Agent with your LLM provider.","Script Depot",87,0,"en","skill","Skill",{"id":29,"uuid":30,"slug":31,"title":32,"description":33,"author_name":34,"view_count":35,"vote_count":24,"lang_type":25,"type":36,"type_label":37},3687,"0c80ab9c-0031-5a65-b7f5-fcdb5de2232e","playwright-mcp-browser-automation-for-agents","Playwright MCP — Browser Automation for Agents","Playwright MCP exposes browser automation via MCP with device emulation; verified 5,510★ and documents 143 device profiles plus `playwright install` setup.","MCP Hub",88,"mcp","MCP",{"id":39,"uuid":40,"slug":41,"title":42,"description":43,"author_name":44,"view_count":45,"vote_count":24,"lang_type":25,"type":46,"type_label":47},2780,"bb4d0b87-1604-44d4-9fb8-c15d63ae362e","browserbase-cloud-browser-infra-for-ai-agents","Browserbase — Cloud Browser Infra for AI Agents","Browserbase runs managed cloud Chromium for AI agents. Stagehand, Playwright, Puppeteer compatible. Scales to 1000s of parallel sessions with replay.","Browserbase",73,"agent","Agent",{"id":49,"uuid":50,"slug":51,"title":52,"description":53,"author_name":22,"view_count":54,"vote_count":24,"lang_type":25,"type":26,"type_label":27},2633,"f6865bc8-47b4-11f1-9bc6-00163e2b0d79","obscura-headless-browser-built-ai-agents-web-scraping-f6865bc8","Obscura — Headless Browser Built for AI Agents and Web Scraping","A high-performance headless browser written in Rust, designed specifically for AI agent workflows and large-scale web scraping with built-in stealth and anti-detection capabilities.",177,{"id":56,"uuid":57,"slug":58,"title":59,"description":60,"author_name":22,"view_count":61,"vote_count":24,"lang_type":25,"type":62,"type_label":63},419,"708bb34d-62a7-4b41-b5ed-9d921e932194","pydoll-browser-automation-without-webdriver-708bb34d","Pydoll — Browser Automation Without WebDriver","Python async browser automation via Chrome DevTools Protocol. Built-in CAPTCHA solving, anti-detection, no Selenium needed. 6.7K+ stars.",188,"script","Script",{"id":65,"uuid":66,"slug":67,"title":68,"description":69,"author_name":22,"view_count":70,"vote_count":24,"lang_type":25,"type":26,"type_label":27},3012,"cc74e4fa-4d11-11f1-9bc6-00163e2b0d79","scrapling-adaptive-web-scraping-framework-python-cc74e4fa","Scrapling — Adaptive Web Scraping Framework for Python","An intelligent Python web scraping framework that handles single requests to full-scale crawls with built-in anti-detection and auto-adaptation.",79,{"id":72,"uuid":73,"slug":74,"title":75,"description":76,"author_name":77,"view_count":78,"vote_count":24,"lang_type":25,"type":26,"type_label":27},744,"6a62a986-9f1a-4a59-88c8-b99151986854","firecrawl-web-scraping-api-ai-applications-6a62a986","Firecrawl — Web Scraping API for AI Applications","Turn any website into clean markdown or structured data for LLMs. Firecrawl handles JavaScript rendering, anti-bot bypassing, sitemaps, and batch crawling via simple API.","Firecrawl",191,{"id":80,"uuid":81,"slug":82,"title":83,"description":84,"author_name":22,"view_count":85,"vote_count":24,"lang_type":25,"type":26,"type_label":27},226,"a9cbbc61-0159-41a5-82a0-f44c24da8b55","jina-reader-convert-any-url-llm-ready-text-a9cbbc61","Jina Reader — Convert Any URL to LLM-Ready Text","Convert any URL to clean, LLM-friendly markdown with a simple prefix. Just prepend r.jina.ai\u002F to any URL. Handles JS-rendered pages, PDFs, and images. 10K+ stars.",6979,{"id":87,"uuid":88,"slug":89,"title":90,"description":91,"author_name":92,"view_count":93,"vote_count":24,"lang_type":25,"type":26,"type_label":27},703,"96da1f40-1823-4d87-a84f-7d8269edeb24","mem0-memory-layer-ai-applications-96da1f40","Mem0 — Memory Layer for AI Applications","Add persistent, personalized memory to AI agents and assistants. Mem0 stores user preferences, past interactions, and learned context across sessions.","Mem0",720,{"id":95,"uuid":96,"slug":97,"title":98,"description":99,"author_name":34,"view_count":100,"vote_count":24,"lang_type":25,"type":36,"type_label":37},3607,"6c45e855-cfad-5617-b5fb-3660436a827a","apify-mcp-server-8-000-web-scrapers-for-agents","Apify MCP Server — 8,000+ Web Scrapers for Agents","Apify MCP Server connects agents to Apify Actors via a hosted endpoint (mcp.apify.com) or local run, turning thousands of web scrapers into callable tools.",104,"tokrepo install pack\u002Fbrowser-agent-web-automation",{"pageType":103,"pageKey":8,"locale":104,"title":105,"metaDescription":106,"h1":107,"tldr":108,"bodyMarkdown":109,"faq":110,"schema":126,"internalLinks":132,"citations":145,"wordCount":158,"generatedAt":159},"pack","zh","浏览器 Agent + 网页自动化全家桶 — 10 个工具发一个替用户上网的 Agent","browser-use \u002F Playwright MCP \u002F Browserbase \u002F Obscura \u002F Pydoll \u002F Scrapling \u002F Firecrawl \u002F Jina Reader \u002F Mem0 \u002F Apify MCP — 十件套流水线，发一个真能替用户在生产环境上网干活的 agent。按端到端安装顺序排列，TokRepo 一键安装。","浏览器 Agent + 网页自动化 — 真在开放互联网上跑的端到端 agent 工作流","十个工具串成一个 agent 工作流：选浏览器框架（browser-use skill）→ 接 MCP 入口（Playwright MCP）→ 选无头运行时（Browserbase 云端 或 Obscura 本地隐身）→ 突破 bot 墙（Pydoll 不用 WebDriver、Scrapling 自适应）→ 抽干净内容（Firecrawl、Jina Reader）→ 给 agent 记忆（Mem0）→ 大规模调度（Apify MCP，8000+ 现成爬虫）。和「Browser Automation 框架对比 pack」不重叠 — 这一个是端到端工作流。","## 这个 pack 包含什么\n\n这不是「玩一下午 Browser-Use」用的，是**想真把一个替用户上网干活的 agent 推上生产、面对会反爬的网站**用的一套组合。TokRepo 上原本的 Browser Automation pack 是框架对比 — 三个 SDK 横评。这个 pack 是下一层：**框架 + 无头运行时 + 反爬对抗 + 内容抽取 + 记忆 + 调度**，按安装顺序串好。\n\n每个 pick 都负责流水线的一个环节。合起来回答真问题：浏览器在哪跑、怎么不被指纹识别、agent 喂给 LLM 的是什么、跨会话怎么记住事、从一个标签页扩到一万个怎么不用自己写队列。\n\n目标用户是**做调研 \u002F 拉名单 \u002F 填表 \u002F 下单 \u002F 监控类 agent 的开发者** — 任何需要 LLM 操作真浏览器、应付登录墙和 Cloudflare、并且跨周累积上下文的场景。\n\n## 推荐安装顺序（框架 → 无头 → 反爬 → 记忆 → 调度）\n\n1. **browser-use Python skill** — agent 框架。让一个 Agent 用你选的 LLM 操作真浏览器的 Python 工具包。从这里开始是因为它最快让你跑通整个循环：prompt → 页面 → 动作 → DOM → 下一步动作。skill 格式装进 Claude Code \u002F Codex \u002F Gemini CLI 都干净。\n2. **Playwright MCP — Browser Automation for Agents** — 协议层入口。把 Playwright 包装成 MCP server，任何懂 MCP 的 agent（Claude Code \u002F Cursor \u002F ChatGPT 桌面）都能直接驱动 Chrome \u002F Firefox \u002F WebKit，不用自己写胶水代码。agent 通过这根线接到浏览器。\n3. **Browserbase — Cloud Browser Infra for AI Agents** — 托管无头。一条 HTTPS 起几千个隐身 Chromium 会话，不用 VPS、不用 Docker、也不用为了过 captcha 烧 IP。等你单机 Chrome 不够用又不想运维一个集群的时候上这个。\n4. **Obscura — Headless Browser Built for AI Agents and Web Scraping** — 自托管隐身。Browserbase 的 DIY 对应版，数据要留在自己机器、或者要把每会话成本压到 $0 时用。开箱就带反指纹默认值。\n5. **Pydoll — Browser Automation Without WebDriver** — 反爬第一层。Bot 检测有个肮脏小秘密：`navigator.webdriver=true` 这个标志位至今仍能放倒大部分过滤器。Pydoll 直接用 DevTools Protocol 驱动 Chrome，这个标志永远不亮。Cloudflare \u002F DataDome 开始对你的 Playwright 流 403 的时候换它。\n6. **Scrapling — Adaptive Web Scraping Framework for Python** — 自适应选择器。网站半夜改 DOM 把爬虫干废；Scrapling 用结构和文本相似度给你关心的元素做指纹，改版后选择器还能活。和上面任何浏览器搭配都行。\n7. **Firecrawl — Web Scraping API for AI Applications** — 干净 markdown。当 agent 只要*内容*（不要页面框架）时，Firecrawl 把 URL 转成 LLM 友好的 markdown，图片 \u002F 链接 \u002F 结构都保留。不需要交互时比开 Playwright 便宜得多。\n8. **Jina Reader — Convert Any URL to LLM-Ready Text** — 兜底取页。免费 `r.jina.ai\u002F\u003Curl>` 接口，剥掉页面框架 \u002F 广告 \u002F 导航。Firecrawl 限流的时候用、网站轻到不用开浏览器的时候用、或者作为第二信源 sanity check。\n9. **Mem0 — Memory Layer for AI Applications** — 持久记忆。Agent 需要记住：访问过哪些站、存了哪些凭证、上周哪个选择器坏了、用户三个会话前说过啥。把这些塞 prompt 又烧 token 又会爆上下文。Mem0 是持久层，把记忆从 prompt 里拿出来。\n10. **Apify MCP Server — 8,000+ Web Scrapers for Agents** — 调度。「这站早就有人写过现成的稳定爬虫」的逃生门。把 Apify 的 Actor 库通过 MCP 暴露给你的 agent — 不用半夜两点现写 Twitter 爬虫，agent 直接调一个。Agent 不知道下一刻会撞到哪个站时，这是漏斗顶层。\n\n## 它们怎么协同（ASCII 流水线）\n\n```\n         ┌── 用户请求 ──┐\n         │ \"帮我订一张...\" │\n         └──────┬─────────┘\n                ▼\n   ┌─── agent loop ──────────────────────────────┐\n   │  browser-use skill \u002F Playwright MCP        │\n   │  （LLM ↔ 浏览器 ↔ DOM 动作循环）            │\n   └────────────────┬───────────────────────────┘\n                    ▼\n   ┌─── 无头运行时 ──────────────────────────────┐\n   │  Browserbase（云端、托管隐身）              │\n   │      或                                     │\n   │  Obscura（自托管、数据本地）                │\n   └────────────────┬───────────────────────────┘\n                    ▼\n   ┌─── 反爬层 ─────────────────────────────────┐\n   │  Pydoll（不要 WebDriver 标志 → 干掉简单的  │\n   │           Cloudflare \u002F DataDome 过滤）      │\n   │  Scrapling（自适应选择器 → 扛得住改版）    │\n   └────────────────┬───────────────────────────┘\n                    ▼\n   ┌─── 内容抽取 ────────────────────────────────┐\n   │  Firecrawl（URL → 干净 markdown）          │\n   │  Jina Reader（免费兜底）                   │\n   │  → LLM 友好文本 + 结构化数据               │\n   └────────────────┬───────────────────────────┘\n                    ▼\n   ┌─── 记忆 ────────────────────────────────────┐\n   │  Mem0（跨会话事实、坏选择器、用户偏好）    │\n   └────────────────┬───────────────────────────┘\n                    ▼\n   ┌─── 调度 ────────────────────────────────────┐\n   │  Apify MCP（8000+ 现成爬虫，不想为每个     │\n   │            站自己造轮子时直接用）           │\n   └─────────────────────────────────────────────┘\n```\n\n流水线**故意留两个入口**：agent 可以自己开浏览器（browser-use + Playwright MCP），也可以委派给 Apify MCP 调一个已经写好的爬虫。真正在生产跑的 agent 两条路都走 — 长尾站偶尔访问就自己开 Chrome，常打的 50 个站直接调 Apify Actor。\n\n## 你会遇到的取舍\n\n- **browser-use vs Playwright MCP** — browser-use 是你 import 的 Python 框架；Playwright MCP 是你 agent 通过 JSON-RPC 调的 server。Agent 运行时是你自己控制（你写的 Python 服务）就 import 框架。Agent 是第三方工具（Claude Code \u002F Cursor）改不了源码就用 MCP。\n- **Browserbase vs Obscura** — Browserbase 是无头浏览器界的 AWS：零运维、按分钟计费、隐身全帮你搞定。Obscura 是自托管：机器买了之后单会话成本为 0，但你要运维。按月浏览器小时数选：\u003C ~200 小时 \u002F 月 Browserbase 总拥有成本赢，更高 Obscura 开始划算。\n- **Pydoll vs Playwright** — Playwright 是行业标准，但每家检测厂商都识别它的指纹。Pydoll 直接接 CDP，通用过滤器不好一刀切。代价：Pydoll API 还年轻，没那么好用。不会反扑的站用 Playwright（或 Playwright MCP），被拦截的那部分流量切到 Pydoll。\n- **Scrapling vs 手写选择器** — 手写 CSS\u002FXPath 写得快但易碎。Scrapling 每次查询多花几毫秒算相似度，但选择器扛得住下次部署。一次性爬手写；跑超过一周一次的活用 Scrapling。\n- **Firecrawl vs Jina Reader** — Firecrawl 收费、批量友好、能渲染 JS。Jina Reader 免费、单 URL、活页面慢时给你缓存快照。原型期先用 Jina，被限流或覆盖不够再切 Firecrawl。\n- **Mem0 vs 把上下文塞 prompt** — 你*可以*把所有历史塞进 system prompt 然后每轮都为它付 token。Mem0 只检索相关事实（上次坏的选择器、用户偏好的日期格式），每轮约 200 token 而不是 20000。\n- **Apify MCP vs 自己写** — Apify 的 8000+ Actor 是专门盯一个站的人维护的。Twitter\u002FX、LinkedIn、Amazon、Google Maps 这种，Apify 在稳定性和「下一波反爬升级后仍能用」上完胜。目标是长尾站、或者数据需求太定制装不进任何现成 Actor 时再自己造。\n\n## 常见踩坑\n\n- **Browser-Use 和 Playwright MCP 跑同一个 Chrome profile**。两个 agent 共用同一个 user-data-dir 会抢活跃 tab、把 session 状态搞乱。永远用不同的 profile 目录，或者把其中一个迁到 Browserbase \u002F Obscura 会话上。\n- **忘了 `navigator.webdriver` 这个标志**。标准 Playwright 默认把它设为 `true`。这个布尔值是任何商业 bot 检测器读的第一个东西。要么通过 CDP 改掉、要么用 Pydoll、要么接受任何挂 Cloudflare 的站迟早 403 你。\n- **把 Apify Actor 当本地代码用**。Apify Actor 在云端跑、按计算单元收费。Agent 在循环里调它没限速账单就上门了。用 Mem0 存一个每日预算，每次调用前 agent 自己检查。\n- **把凭证存在 agent prompt 或 Mem0 明文里**。用宿主 CLI 的 secret 管理（Claude Code 的 `~\u002F.claude\u002Fsecrets`、服务的环境变量），让 agent 按名字读、不读值。Mem0 只记「有这个凭证」，永不记内容。\n- **递归抓得太狠**。调研 agent 递归点击每页所有链接，一下午把 Firecrawl 配额烧光。深度卡 2、按 URL hash 去重、用 Mem0 跳过上周已访问的 URL。\n- **跳过内容抽取直接喂 HTML 给 LLM**。又贵又脏。永远过 Firecrawl 或 Jina Reader，LLM 看到的是 markdown 不是导航菜单和跟踪脚本。",[111,114,117,120,123],{"q":112,"a":113},"十个工具我都要装吗？能不能先小一点起步？","先装三个：browser-use skill 跑 agent 循环、Playwright MCP 让现有 MCP 客户端能驱动它、Jina Reader 处理内容侧。这是一个晚上就能在笔记本上跑通的网页 agent。再装 Browserbase 或 Obscura 当你超过单机 Chrome 容量。第一次被 Cloudflare 403 时加 Pydoll。第一次半夜选择器坏掉时加 Scrapling。Jina 被限流或需要批量 markdown 时加 Firecrawl。发现自己每个 prompt 都复制粘贴一样的上下文时加 Mem0。Agent 反复撞到一些已有现成爬虫的站时加 Apify MCP。全 10 件套要等 agent 跨周无人值守、对接 ~20 个以上不同站点之后才真划得来。",{"q":115,"a":116},"这个 pack 和 TokRepo 上已有的 Browser Automation pack 有啥区别？","Browser Automation pack 是框架对比 — Browser-Use vs Skyvern vs Stagehand 横评，加一个 Chrome MCP 弹窗补丁。它回答「import 哪个库」。这个 pack 回答下一个问题：要真把 agent 发出去，那个库**周围**还需要什么 — 无头运行时、反爬对抗、内容抽取、持久记忆、和把活外包给已有爬虫的路。两个 pack 资产零重叠，互补不重复。",{"q":118,"a":119},"Agent 驱动的爬虫会不会让我被告？","完全看目标站和法域。爬公开数据在 hiQ v. LinkedIn 之后在美国一般受保护，但绕过反爬措施、爬登录墙后内容、违反站点 TOS 都开真实责任窗口。安全模式：爬自己的 dashboard、爬 TOS 明确允许自动化的站（多数搜索引擎、多数公开数据门户）、或对那些 Actor 作者已经做过法律分析的站用 Apify Actor。永远不要把反爬层（Pydoll、Browserbase 隐身）用在你没读过 TOS 的站上。",{"q":121,"a":122},"为啥一个浏览器 pack 里放记忆层（Mem0）？","因为有用的浏览器 agent 不是无状态的。跨会话它要记：上周哪个选择器坏了换成了啥替代、哪些站限流过、上次什么时候可以重试、哪些登录流程要 2FA 需要用户确认、用户的收货地址是啥、「我常订的航班」指啥。这些每轮全塞 system prompt 既浪费 token 又扛不住规模化。Mem0 每轮只检索相关事实 — 一般几百 token — 其余存向量库。没有记忆层，每个 agent 每周都要重新发现一遍同样的坏选择器。",{"q":124,"a":125},"同一套 pack 能在 Claude Code \u002F Cursor \u002F Codex CLI 都跑吗？","能。十个 pick 里有六个是 MCP server 或 Python\u002FTypeScript 库，任何 agent 宿主都能调。Playwright MCP、Firecrawl MCP（同一个上游服务）、Apify MCP、Mem0 SDK 都说标准协议。browser-use skill 是 Claude Code skill 格式但底层库是纯 Python — Cursor 和 Codex 通过 AGENTS.md 或 Python tool 定义直接接。Browserbase 和 Obscura 走 HTTP，agent 宿主无关紧要。Pydoll 和 Scrapling 是 Python 库，你 agent 已有的 runtime 里 import 即可。",{"@context":127,"@type":128,"name":13,"description":129,"numberOfItems":130,"inLanguage":131},"https:\u002F\u002Fschema.org","ItemList","十个 AI 资产串成一个端到端浏览器 agent 工作流 — 框架、MCP 入口、无头运行时、反爬对抗、内容抽取、记忆、调度。",10,"zh-CN",[133,137,141],{"url":134,"anchor":135,"reason":136},"\u002Fzh\u002Fpacks\u002Fbrowser-automation","Browser Automation 框架对比 pack","姐妹 pack，横评 Browser-Use \u002F Skyvern \u002F Stagehand — 和本端到端工作流 pack 配套使用",{"url":138,"anchor":139,"reason":140},"\u002Fzh\u002Fpacks\u002Fagent-memory-layer","Agent 记忆层 pack","Mem0 \u002F Zep \u002F Cognee 深度对比 — 本流水线第 9 步引用的记忆层",{"url":142,"anchor":143,"reason":144},"\u002Fzh\u002Fpacks\u002Fmcp-server-stack","MCP 服务器全家桶 pack","MCP 协议是本 pack 里 Playwright \u002F Firecrawl \u002F Apify 三个条目的底座",[146,150,154],{"claim":147,"source_name":148,"source_url":149},"browser-use 是让一个 Agent 用 LLM 操作真浏览器的 Python 工具包","browser-use GitHub 仓库","https:\u002F\u002Fgithub.com\u002Fbrowser-use\u002Fbrowser-use",{"claim":151,"source_name":152,"source_url":153},"Playwright 是开源浏览器自动化框架，一套 API 驱动 Chromium \u002F Firefox \u002F WebKit","Playwright 官网","https:\u002F\u002Fplaywright.dev\u002F",{"claim":155,"source_name":156,"source_url":157},"Mem0 是 AI 应用的开源记忆层，每轮只检索相关事实，不靠塞 prompt","mem0ai\u002Fmem0 GitHub 仓库","https:\u002F\u002Fgithub.com\u002Fmem0ai\u002Fmem0",910,"2026-05-22T09:00:00Z"]