mcpField
J
jina-web-fetch

jina-web-fetch

github.com/xiaojiongqian生产力357 次安装25 周前更新
代码仓库

关于 jina-web-fetch

jina-web-fetch 是一项网页内容采集技能,先尝试直接抓取,在访问失败或疑似受阻时改用 jina.ai。它可保存原始采集内容以便追溯,并报告实际采用的抓取路径。

主要功能

  1. 01优先尝试直接抓取
  2. 02受阻时通过 jina.ai 重试
  3. 03将采集内容保存到文件
  4. 04报告所用的抓取路径
  5. 05配置超时与回退行为

适用场景

  1. 01采集难以直接访问的网页内容
  2. 02保存原始网页文本以供审计
  3. 03获取需要 JavaScript 或遇到访问限制的页面

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/xiaojiongqian/skills-hub --skill jina-web-fetch

安装后在 Claude Code 中输入/jina-web-fetch确认已加载。

附带文件agents/openai.yamlscripts/fetch_with_jina_fallback.sh

详细介绍

Jina 网页抓取

使用此技能捕获难以抓取的页面,同时保持工作流的确定性:

  1. 首先尝试直接抓取。
  2. 如果直接抓取失败或疑似受到拦截,则通过 jina.ai 重试。

快速开始

bash "<path-to-skill>/scripts/fetch_with_jina_fallback.sh" "<url>" "<output_file>"

示例:

bash "<path-to-skill>/scripts/fetch_with_jina_fallback.sh" \
  "https://x.com/trq212/status/2027463795355095314" \
  "raw/x-status.txt"

脚本会将 source=direct 或 source=jina 打印到 stderr,便于你查看使用了哪种方式。

如果省略 output_file,内容会打印到 stdout。

默认工作流

  1. 使用目标 URL 运行脚本。
  2. 将原始输出保存到可追溯的路径下,例如 raw/<slug>.txt。
  3. 从提取的文本或 Markdown 中解析:
    • 正文
    • 媒体链接(图片/视频)
    • 引用的 URL
  4. 将原始 URL 与原始抓取结果一并保存,以便审计。

拦截判断规则

当直接抓取的内容呈现以下特征时,脚本会自动回退到 jina.ai:

  • 登录墙 / 注册提示词
  • 需要 JS 的页面
  • 反机器人 / 验证码 / 拒绝访问页面
  • 极小的类 shell HTML 页面(默认阈值为 < 800 字节)

环境变量选项

  • FETCH_TIMEOUT(默认 25)
  • FETCH_CONNECT_TIMEOUT(默认 10)
  • FETCH_MIN_BYTES(默认 800)
  • JINA_FORCE=1:跳过直接抓取,始终使用 jina.ai

URL 格式说明

回退 URL 的构造方式如下: https://r.jina.ai/http://<original-host-and-path>

评论

支持 Markdown