数据与AI
需要批量爬取同一网站或文档多页时,用 Tavily CLI…
适用于需要从同一域名批量抓取多页内容(如整个文档章节、离线文档)并通过 Tavily CLI 控制范围与输出格式的场景。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 60/100 ×0.15
适用场景
需要批量爬取同一网站或文档多页时,用 T特定
解决思路
- 认证:crawl 需要认证;当 `tvly` 已认证时直接运行请求的命令,不要每次调用都加状态检查。
- 如果 `tvly` 缺失,按 [tavily-cli setup](../tavily-cli/SKILL.md#setup) 进行安装/配置。
- 如果已安装 CLI 报认证错误,使用 `tvly login` 仅做认证;当也需要引导验证时使用 `tvly init --skip-skills`。
- 当交互式用户可完成认证时,优先使用浏览器 OAuth;`--no-browser` 会打印登录链接而不打开浏览器,但仍等待 localhost 回调。
- 在无人值守 agent 或 CI 环境中,把认证留给用户,或使用安全提供的 `TAVILY_API_KEY`。
- 引导设置完成后,不要立刻启动第二次登录。
- 使用 `tvly crawl` 爬取网站并从多个页面提取内容;支持将每个页面保存为本地 markdown 文件。
- 基本爬取:运行 `tvly crawl "https://docs.example.com" --json`。
- 保存每页为 markdown 文件:运行 `tvly crawl "https://docs.example.com" --output-dir ./docs/`。
- 更深的爬取并加限制:运行 `tvly crawl "https://docs.example.com" --max-depth 2 --limit 50 --json`。
- 过滤到特定路径:运行 `tvly crawl "https://example.com" --select-paths "/api/.*,/guides/.*" --exclude-paths "/blog/.*" --json`。
- 语义聚焦(返回相关块而非完整页面):运行 `tvly crawl "https://docs.example.com" --instructions "Find authentication docs" --chunks-per-source 3 --json`。
- 使用 `--max-depth` 控制层级深度(1-5,默认 1)。
- 使用 `--max-breadth` 控制每页链接数(默认 20)。
- 使用 `--limit` 控制总页数上限(默认 50)。
- 使用 `--instructions` 提供自然语言指导以实现语义聚焦。
- 使用 `--chunks-per-source` 控制每页块数(1-5,需要配合 `--instructions`)。
- 使用 `--extract-depth` 选择 `basic`(默认)或 `advanced`。
- 使用 `--format` 选择 `markdown`(默认)或 `text`。
- 使用 `--select-paths` 传入逗号分隔的正则模式以包含指定路径。
- 使用 `--exclude-paths` 传入逗号分隔的正则模式以排除指定路径。
- 使用 `--select-domains` 传入逗号分隔的正则模式以包含指定域名。
- 使用 `--exclude-domains` 传入逗号分隔的正则模式以排除指定域名。
- 使用 `--allow-external` / `--no-external` 控制是否包含外部链接(默认允许)。
- 使用 `--include-images` 包含图片。
- 使用 `--timeout` 设置最大等待时间(10-150 秒)。
- 使用 `-o, --output` 将 JSON 输出保存到文件。
- 使用 `--output-dir` 将每页保存为目录中的 .md 文件。
- 使用 `--json` 获得结构化 JSON 输出。
- 面向 agentic 使用(把结果喂给 LLM)时,始终使用 `--instructions` + `--chunks-per-source`;只返回相关块而非整页,防止上下文爆炸;例如 `tvly crawl "https://docs.example.com" --instructions "API authentication" --chunks-per-source 3 --json`。
- 面向数据收集(保存到文件)时,使用 `--output-dir` 且不要使用 `--chunks-per-source`,以获取完整页面 markdown 文件;例如 `tvly crawl "https://docs.example.com" --max-depth 2 --output-dir ./docs/`。
- 从保守参数开始:`--max-depth 1`、`--limit 20`,然后逐步扩大。
- 使用 `--select-paths` 聚焦到所需部分。
- 先使用 map(tavily-map)了解站点结构,再进行完整爬取。
- 始终设置 `--limit` 以防止失控爬取。
- 需要先发现 URL 时,参考/使用 `tavily-map`。
- 需要提取单个页面时,参考/使用 `tavily-extract`。
- 没有 URL 时,参考/使用 `tavily-search` 查找页面。
适用边界 · 注意事项
- 只需要提取单个页面时,使用 `tavily-extract`,而不是 crawl。
- 还没有 URL、需要先查找页面或先发现站点结构时,先用 `tavily-search` 或 `tavily-map`,而不是直接 crawl。
- 无人值守环境无法完成交互式认证且没有安全提供的 `TAVILY_API_KEY` 时,不要直接运行 crawl。