Skip to main content

功能说明

对应工具标识 web_fetch。 web_fetch 对给定 URL 发起一次普通 HTTP GET 并抽取正文:HTML 转 Markdown 或纯文本,PDF 用 pypdf 抽取文字。它不执行 JavaScript——纯前端渲染或需要登录的页面可能抽取不全。与 link_reader 不同,该工具自身无需任何凭证(纯 HTTP 抓取),适合让智能体阅读用户给出的文章、文档或任意公开链接。 导入路径:from veadk.tools.builtin_tools.web_fetch import web_fetch

环境变量与前提

环境变量:
  • MODEL_AGENT_API_KEY:智能体推理模型的 API Key(web_fetch 工具本身无需额外凭证)

使用方法

参数:
  • url:要抓取的 http(s) 链接;
  • extract_mode:markdown(默认,保留标题 / 链接 / 列表)或 text(纯文本);
  • max_chars:抽取内容的最大字符数(默认 50000)。
返回 {"url", "title", "content", "truncated"},失败时返回 {"error": ...}。
examples/tools/web_fetch/agent.py

额外说明

安全与限制:
  • SSRF 防护:解析域名后拦截私网 / 环回 / 链路本地 / 保留地址,并对每一跳重定向(含 <meta refresh>)重新校验,最多跟随 3 跳。
  • TLS 校验:HTTPS 请求会校验证书;证书无效或无法验证时,请求失败并返回错误。
  • 上限:HTML 下载上限 2MB、PDF 10MB;请求超时 30 秒;结果在进程内缓存 15 分钟。
  • 不渲染 JavaScript;未做 socket 级 DNS pinning(仅“解析后校验”)。
最后修改于 2026年9月19日