核心用法
TinyFish 是一套四层递进的网络工具套件,按复杂度从轻到重分为 search → fetch → agent → browser。
- search:快速获取搜索结果(标题、URL、摘要),适合发现信息源
- fetch:并行抓取多页面,自动清洗广告与导航,输出 Markdown/JSON 结构化内容
- agent:自然语言驱动的浏览器自动化,支持点击、填表、分页、JSON 结构化提取
- browser:原始 CDP 会话,供 Playwright/Puppeteer 完全控制
典型工作流:
1. 研究型任务:search 找来源 → fetch 读全文
2. 动态提取:search 定位站点 → agent 交互并提取结构化数据
3. 对抗性场景:fetch 失败(JS 渲染)→ 升级到 agent → 再升级到 browser
关键特性:
- 批量并行:单次
fetch可处理多 URL;agent支持 CSV 批量提交 - 结构化输出:强制在 agent 指令中声明 JSON Schema,确保结果可用
- 地理位置与语言:search 支持
--location和--language定向
显著优点
- 分层设计合理:从轻到重的工具链避免过度消耗,成本与速度可控
- 提取质量高:fetch 自动去噪,agent 可处理动态/登录态页面
- 开发者友好:输出 JSON 为主,支持
--pretty调试,CDP 兼容现有生态 - 批处理能力:agent batch 模式适合大规模监控与竞品抓取
潜在缺点与局限性
- 成本阶梯:agent 和 browser 显著慢于 search/fetch,高频调用需预算规划
- 并发限制:大规模并行需依赖 batch 模式,单次 CLI 调用非真异步
- 反爬对抗:未明确提及 CAPTCHA 或指纹绕过能力,极端场景可能降级
- 依赖外部服务:需 API Key 认证,离线环境不可用
适合人群
- 需要实时信源的研究者、分析师、记者
- 构建竞品监控、价格追踪、SEO 采集的工程师
- 希望用自然语言而非 XPath 提取数据的非技术用户
- 已有 Playwright/Puppeteer 工作流、需云端浏览器池的团队
常规风险
- 数据合规:抓取需遵守目标站点的 robots.txt 与服务条款,商业用途存在法律边界
- API 密钥安全:
TINYFISH_API_KEY若泄露可能导致配额滥用 - 结果一致性:agent 依赖 LLM 理解页面结构,复杂布局可能出现提取遗漏
- 成本失控:agent/browser 按时间或步骤计费,长会话或未设限的 batch 任务可能超支