网页爬虫遵循你写的指令。浏览器代理自己做决定:它查看渲染后的页面,推理下一步该做什么,然后点击、输入并滚动真实浏览器去完成。像 browser-use、Skyvern 和 Anthropic 的 computer-use 这样的工具,把 LLM 变成一个像人一样操作浏览器的东西——填表单、走流程、读结果、在布局变化时自我恢复。
这只有在浏览器持续运行时才有效。在你的笔记本上,一合盖它就停了。本页讲的是如何把浏览器代理放到服务器上,规格选对,让它全天候运行。
爬虫 vs 代理——选对工具
对你到底在做哪一种要诚实,因为它们需要的东西不同:
- 爬虫(httpx、Scrapy)抓取已知 URL 并提取固定字段。确定、轻量、便宜。如果这是你的任务,正确的页面是网页爬虫指南——别为你不需要的浏览器付费。
- 浏览器代理在真实 Chromium 中渲染页面,让 LLM 决定每一步动作。它能处理爬虫搞不定的站点——动态应用、不可预测的布局、多步流程——代价是更重的机器和每步的模型调用。
本页讲的是第二种。
这台机器到底需要什么
代理循环本身很小;耗资源的是 headless 浏览器。
- RAM 是瓶颈。 headless Chromium 约 300-500 MB,每多一个标签页或上下文再加 100-200 MB。一个代理驱动一个浏览器在 Small($8/月——4 vCPU,4 GB) 上很舒服。同时运行多个浏览器上下文则要升到 Medium($12)。
- 无需 GPU。 模型在你的提供商处运行(Anthropic/OpenAI);服务器负责编排和渲染。这是 CPU 和 RAM。
- NAT 就够。 代理只发出站调用——发往它操作的站点和模型 API。独立 IP 只用于入站服务。
搭建
# Ubuntu 24.04
apt update && apt install -y python3-venv git
python3 -m venv ~/agent && source ~/agent/bin/activate
# browser-use + 供 Playwright 用的 Chromium
pip install browser-use
playwright install --with-deps chromium
一个最小循环从环境读取模型密钥,绝不硬编码:
# run.py
import os, asyncio
from browser_use import Agent
from browser_use.llm import ChatAnthropic
async def main():
agent = Agent(
task="Open the status page and report which services are down.",
llm=ChatAnthropic(model="claude-sonnet-4-5", api_key=os.environ["ANTHROPIC_API_KEY"]),
)
await agent.run()
asyncio.run(main())
用 systemd 服务让它在崩溃和重启后保持存活——与让任何代理 7×24 运行相同的模式,用 Restart=always,并把模型密钥放在 EnvironmentFile 里,而不是单元文件里。
盯住 RAM。 一个从不关闭标签页的浏览器代理会慢慢吃掉这台机器——任务结束时关闭页面和上下文,并限制并发。泄漏的 Chromium 是这类代理垮掉最常见的原因。
真正属于我们的部分:代理可以自己租机
这里 EQVPS 与普通主机不同。通过我们的 MCP 服务器,代理可以注册、充值加密余额并 order_vps——自己订一台全新机器,结账处无需人。所以需要干净环境运行的浏览器代理,可以自己开通服务器、操作浏览器,完成后销毁它——全部从预付余额扣款。
把这与无需 KYC 的加密支付配对,整个循环就都留在身份记录之外:邮箱注册、USDC 或 USDT 支付、约一分钟拿到 root。
诚实的限制
- 仅 CPU,单一地区(德国)。 对驱动浏览器和调用 API 没问题;如果你需要 GPU 或特定地理位置,请提前知晓。
- 模型成本另计。 每一步都是一次模型调用;话痨代理的 API 账单通常远超 $8 的服务器。机器才是便宜的部分。
- 尊重你把它指向哪里。 浏览器代理能登录、提交并购买。只把它对准你有权操作的站点;滥用、欺诈和拒绝服务违反可接受使用政策。
在这些边界内,浏览器代理放在自己全天候运行的服务器上是真正有用的模式——你睡觉时它在干活。选个套餐,用加密支付,一分钟内跑起来。如果你的任务是固定提取而非推理,网页爬虫指南是更便宜、更简单的路。
评论
暂无评论。来做第一个吧。