news 2026/9/24 14:23:49

browser-use 入门完整指南:AI 自动下载网页文件,一句话跑通批量归档

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
browser-use 入门完整指南:AI 自动下载网页文件,一句话跑通批量归档

browser-use 入门完整指南:AI 自动下载网页文件,一句话跑通批量归档

【免费下载链接】browser-useAgents that use the browser.项目地址: https://gitcode.com/GitHub_Trending/br/browser-use

月底结算,120 份物流 PDF 要逐份点开、右键、另存为,光下载就耗掉你半天。browser-use 是让 AI 直接操作浏览器、自动完成"浏览→下载→归档"全链路的开源框架:你用一句话描述任务,它自己打开网页、找到下载链接、保存文件,全程不用碰鼠标。这篇 browser-use 教程带你从安装到跑通第一个任务。

先看效果:一句话需求,变成目录里的文件

它的输入输出非常直白:

你说的话(输入)AI 做的你得到的(输出)
"下载这两个站点上最小的文档文件"打开页面→读页面→点链接→等下载完成→再点下一个文件已躺在你指定的目录里,随时可取

整个过程它像真人一样操作:先"看"一眼页面,判断哪个链接才是目标文件,点击后等待下载完成,再回到列表处理下一个。你唯一的参与,是把需求说明白。

上图就是 AI 在真实浏览器里打开并操作过的页面。它能处理的远不止下载页,表单、商城、后台系统都能操作。

能力边界:browser-use 能做什么,别指望什么

它能稳做的别指望它做的
按文字描述定位下载链接并触发下载(PDF、DOC、CSV、ZIP 都常见)绕过验证码、风控等反爬拦截
文件直接落进你指定的目录,目录结构由它规划通过需要人工扫码的强认证流程
下载后自动重命名、分类,还能接后续处理在完全无网的离线环境里工作
多站点、批量、定时重复跑同一套任务一次运行处理需要人工判断的灰色边界

它接管一切"人看一眼就知道怎么点"的操作;人也要摸索半天的坑,它同样会卡住。

上手指南:十分钟装好,跑通第一次 AI 自动下载

环境要求不高:Python 3.11 以上,加一个 LLM 的 API Key(下例用 Google Gemini)。

git clone https://gitcode.com/GitHub_Trending/br/browser-use cd browser-use pip install browser-use

这是最小可运行示例,全文就两段代码,另一段在上面:

import asyncio import os from browser_use import Agent, Browser, ChatGoogle # 大模型:换成你自己的 API Key llm = ChatGoogle(model='gemini-2.5-flash', api_key=os.getenv('GOOGLE_API_KEY')) # 指定下载目录,AI 会把文件存到这里 browser = Browser(downloads_path='~/Downloads/auto_downloads') async def main(): agent = Agent( task='访问 https://file-examples.com/ ,下载最小的 DOC 文件,' '然后回到列表继续下载最小的 XLS 文件', llm=llm, browser=browser, ) await agent.run(max_steps=25) # 最多跑 25 步,防止失控 if __name__ == '__main__': asyncio.run(main())

运行前检查两件事:模型的 API Key 环境变量已设置、下载目录有写权限。这两点是新手翻车最多的地方。

跑起来后你会看到:浏览器自动打开→AI 读页面→点中 DOC 链接→等下载完成→回到列表→再点 XLS 链接。两个文件落进auto_downloads目录,单步耗时取决于模型响应速度,全程不用你干预。

原理拆解:AI 是怎么"看懂"网页的

它并不"看"网页,处理的是文本和截图。browser-use 把这拆成三个角色:

  1. 菜单。浏览器扩展browser_use/dom/serializer/把当前页面的按钮、链接、输入框序列化成一份带编号的可点击清单,喂给 AI。就像餐厅菜单:每道菜有编号,AI 只要说"来 37 号"。它不写死任何网站的规则,而是每次现读现理解——这是它能"看懂"陌生网站的根本原因。
  2. 服务员browser_use/agent/service.py里的 Agent 接到编号后真正动手:点击、填表、滚动、翻页,每一步都记进执行历史,出错还能回看纠正。
  3. 质检员。下载从点击到落盘中间有跳转、有进度,browser_use/browser/watchdogs/downloads_watchdog.py全程盯着开始、进度、完成三个事件,网络抖动导致文件没下全时自动重试。

另外,browser_use/browser/profile.py的 BrowserProfile 可以预设下载目录、登录态等参数,是进阶配置的主入口。

进阶玩法:三个高频 AI 浏览器自动化场景

  • 物流运营归档。任务:"去承运商后台把上月的运单 PDF 逐份下载,按'运单/2026-08'存好。"它替你登录、翻页、逐个下载、落目录,原来半天的活趁你喝咖啡就做完了。
  • 电商规格表收集。任务:"去某品牌官网,把全线产品的规格表 PDF 存到'规格/产品线'文件夹。"它替你逐个逛产品页、下载、按文件夹归类,你只负责验收。
  • HR 岗位资料收集。任务:"把招聘站上每个岗位的职位描述 PDF 按职能分类下载。"它替你翻站、下载、命名归档,后续改 JD 直接查文件夹。

细节写法可以参考 examples/ 目录里的下载与文件系统示例。

避坑指南:新手最常踩的三个坑

症状原因解法
文件"消失"了,哪里都找不到没传downloads_path,文件去了系统临时目录的随机文件夹先指定下载目录再跑任务,这是第一课
AI 在登录页反复打转站点需要登录,任务里没有会话先用 examples/browser/save_cookies.py 手动保存一次 Cookie/存储状态,再传给任务复用
找不到下载按钮,乱点半天任务描述太含糊描述里带上筛选条件、文件格式、保存规则,比如"下载报价单区域最新的 PDF,按供应商名命名"
跑几步弹出验证码卡死站点风控拦截换更强的模型重试,或改到风控宽松的时间段跑

适用判断:谁该用 browser-use,模型怎么选

  • 该用:任务重复、规则清晰、量级上来(比如每天超过 30 个文件),日报收集、批量导出、定时归档都是甜区。
  • 别硬用:一次性随手下一个文件,配环境的时间比手动点多。工具的价值在重复的复利——配一次,以后每次都省时间。

模型怎么挑?browser-use 支持 OpenAI、Claude、Gemini、DeepSeek 等主流模型,差距明显:强模型稳但贵,小模型便宜但容易跑偏。参考官方基准里各模型的任务成功率:

个人尝试从便宜模型起步,正式流程再换强模型,这是性价比最高的路线。

今晚就把任务那行换成你自己的真实需求,跑一遍。等它替你点下第一个下载按钮,以后重复的另存为和改名,就不用再动手了。

【免费下载链接】browser-useAgents that use the browser.项目地址: https://gitcode.com/GitHub_Trending/br/browser-use

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/24 14:22:25

Jackett索引器分类管理:影视/音乐/游戏资源分离

Jackett索引器分类管理:影视/音乐/游戏资源分离 你是否还在为各类 torrent 资源混杂在一起难以筛选而烦恼?使用 Jackett 的索引器分类功能,能轻松实现影视、音乐、游戏等资源的精准分离,让资源管理井然有序。读完本文&#xff0c…

作者头像 李华
网站建设 2026/9/24 14:22:07

突破缓存瓶颈:Jackett性能优化之LRU与TTL双策略实践指南

突破缓存瓶颈:Jackett性能优化之LRU与TTL双策略实践指南 Jackett作为一款强大的API支持工具,为用户提供了访问各种种子追踪器的统一接口。在日常使用中,随着索引器数量的增加和搜索请求的频繁,缓存机制成为提升性能的关键。本文将…

作者头像 李华