mcpField
F
feedgrab

feedgrab

github.com/ibigqiang生产力62083 次安装5 天前更新
代码仓库

关于 feedgrab

feedgrab 是一项将 URL 内容提取为 Markdown 的技能,适合需要结构化阅读网页和社交平台内容的用户。它会按平台选择抓取方式,并将结果保存为 Markdown 文件。

主要功能

  1. 01从 URL 抓取内容
  2. 02支持多种社交与发布平台
  3. 03按平台选择提取方式
  4. 04保存为结构化 Markdown 文件
  5. 05支持读取剪贴板内容

适用场景

  1. 01提取 URL 中的文章或社交帖子
  2. 02读取视频字幕或转录内容
  3. 03将网页内容保存为 Markdown
  4. 04抓取剪贴板中的 URL

安装

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

$npx skills add https://github.com/ibigqiang/feedgrab --skill feedgrab

安装后在 Claude Code 中输入/feedgrab确认已加载。

详细介绍

feedgrab — 通用内容抓取工具

输入 URL,获取结构化 Markdown。支持 17+ 个平台的深度提取。

触发条件

当用户提供 URL 并希望抓取、提取或阅读其中的内容时激活:

  • /feedgrab <URL>
  • “抓取这篇文章”
  • “阅读这条推文/帖子”
  • “抓取这个链接”
  • 来自受支持平台的任何 URL

前置条件检查

抓取前,请确认已安装 feedgrab:

which feedgrab 2>/dev/null || command -v feedgrab 2>/dev/null

如果尚未安装,请告知用户:

feedgrab is not installed. Run `/feedgrab-setup` or manually:
  pip install feedgrab[all]
  feedgrab setup

然后停止操作——未安装 feedgrab 时不要继续。

支持的平台

平台URL 模式方法
X/Twitterx.com/*/status/*, twitter.com/*GraphQL → FxTwitter → Syndication → oEmbed → Jina → Playwright
WeChat(微信公众号)mp.weixin.qq.com/*Playwright JS evaluate → Jina
Xiaohongshu(小红书)xiaohongshu.com/explore/*, xhslink.com/*API (xhshow) → Pinia Store 注入 → Jina → Playwright
YouTubeyoutube.com/watch?v=*, youtu.be/*, ShortsInnerTube API → yt-dlp 字幕 → Groq Whisper
GitHubgithub.com/*/*REST API(优先使用中文 README + 扫描子目录)
LinuxDo / Discourselinux.do/t/*Discourse 主题 JSON API → CDP → Playwright 页面内 fetch → Jina
IDCFlare / Discourseidcflare.com/t/*Discourse 主题 JSON API → CDP → Playwright 页面内 fetch → Jina
Feishu/Lark(飞书)feishu.cn/docx/*, feishu.cn/wiki/*Open API → CDP → Playwright PageMain → Jina
KDocs(金山文档)kdocs.cn/l/*Playwright ProseMirror DOM(虚拟滚动 + CDP)
FlowUs(息流)flowus.cn/share/*, flowus.cn/*/<uuid>HTTP API → CDP/启动浏览器 → Jina;在线签名图片或本地附件
Youdao Note(有道云笔记)share.note.youdao.com/*JSON API → Playwright iframe → Jina
Zhihu(知乎)zhihu.com/question/*/answer/*, zhuanlan.zhihu.com/p/*API v4 → Playwright CDP/DOM → Jina
Bilibili(B 站)bilibili.com/video/*, b23.tv/*API 元数据 + 三级字幕回退(v2 → WBI v2 → Whisper)
Xiaoyuzhou(小宇宙)xiaoyuzhoufm.com/episode/*SSR __NEXT_DATA__ + Groq Whisper 转录
Ximalaya(喜马拉雅)ximalaya.com/sound/*, m.ximalaya.com/sound/*Web Revision API + canPlay 降级 + Groq Whisper
Telegramt.me/*Telethon
HackerNewsnews.ycombinator.com/item?id=*Firebase API v0(item.json + 第一层评论 + hn top/new/best/ask/show/jobs 列表批量抓取)
Mediummedium.com/*, *.medium.com/*Jina Reader → JSON-LD articleBody → Stealth Browser;通过 RSS 批量抓取用户/出版物内容
Redditreddit.com/r/*/comments/*, redd.it/*old.reddit.com .json + self-UA → CDP → Stealth Playwright + 已保存的会话 → Jina(REDDIT_REPLY_MODE=top/tree/all;通过 reddit-sub / reddit-so 批量抓取/搜索)
Weiboweibo.com/*, weibo.cn/*, m.weibo.cn/status/*m.weibo.cn /statuses/show + container/getIndex + SSR $render_data 回退(SUB cookie 可选)
Douyin(抖音)douyin.com/video/*, v.douyin.com/*(短链接)CDP → Stealth Playwright + 已保存的会话 → SSR RENDER_DATA → Jina(浏览器端签名,无需破解算法)
Zsxq(知识星球)articles.zsxq.com/id_*.html, wx.zsxq.com/group/*/topic/*, t.zsxq.com/*(短链接)HTTP cookie(文章 SSR HTML / api.zsxq.com 主题 JSON)→ CDP → Stealth Playwright → Jina(有身份验证限制,需要登录)
RSSRSS/Atom 源 URLfeedparser
付费墙新闻(300+)NYT/WSJ/FT/Economist/Bloomberg...JSON-LD → Googlebot/Bingbot UA → AMP → EU IP → archive.today → Google Cache → Jina
任意网页其他任何 URLJSON-LD 预扫描 → Jina Reader 回退

流程

第 1 步:抓取内容
feedgrab "$ARGUMENTS"

CLI 会自动检测平台并调用相应的抓取器。

步骤 2:定位输出文件

feedgrab 会将输出保存到 OUTPUT_DIR(默认值:./output/)。查看 CLI 输出中的已保存文件路径,通常为:

  • output/X/author_date:title.md
  • output/mpweixin/author_date:title.md
  • output/XHS/author_date:title.md
  • output/YouTube/author_date:title.md
  • output/GitHub/author_date:title.md
  • output/LinuxDo/author_date:title.md
  • output/IDCFlare/author_date:title.md
  • output/Feishu/author_date:title.md
  • output/KDocs/author_date:title.md
  • output/FlowUs/author_date:title.md
  • output/NoteYouDao/author_date:title.md
  • output/Zhihu/author_date:title.md
  • output/Bilibili/author_date:title.md
  • output/Xiaoyuzhou/author_date:title.md
  • output/Ximalaya/author_date:title.md
  • output/Web/author_date:title.md(付费墙/通用页面)
步骤 3:读取并展示

读取输出 .md 文件,并向用户展示内容。该文件包含:

  • YAML front matter(标题、来源、作者、发布日期、点赞数、标签等)
  • 完整的 Markdown 格式文章/推文/帖子内容
  • 图片(远程 URL,或启用媒体下载时使用本地路径)

剪贴板模式

如果用户说“从剪贴板抓取”,或者 URL 中包含 &(这会导致 PowerShell 出错):

feedgrab clip

此命令会从系统剪贴板读取 URL。

错误处理

错误解决方案
feedgrab: command not found运行 /feedgrab-setup
Cookie 过期 / 401 / 403运行 feedgrab login <platform> 刷新
Jina 超时(30s)feedgrab 会自动使用 Playwright 重试
速率限制(429)如果已配置,feedgrab 会自动轮换 Cookie
未设置 OUTPUT_DIR运行 feedgrab setup 进行配置

提示

  • 对于 Twitter 深度提取(浏览量、收藏、帖子串):通过 feedgrab login twitter 配置 Cookie
  • 对于 微信公众号文章:抓取单篇文章无需登录
  • 对于 小红书:运行 pip install xhshow 使用 API 模式(速度更快,无需浏览器)
  • 对于 GitHub:设置 GITHUB_TOKEN 以提高速率限制(5000 次/小时,而非 60 次/小时)
  • 对于 LinuxDo / Discourse:如果主题为私密内容,或网站要求浏览器会话/Cloudflare Cookie,请运行 feedgrab login linuxdo
  • 对于 IDCFlare / Discourse:如果主题为私密内容,或网站要求浏览器会话/Cloudflare Cookie,请运行 feedgrab login idcflare
  • 对于 Discourse 论坛:默认回复模式仅抓取 OP 和主题作者的后续回复;使用 LINUXDO_REPLY_MODE / IDCFLARE_REPLY_MODE 切换(author / all / none)
  • 对于 Reddit:使用 REDDIT_REPLY_MODE=tree 抓取嵌套回复,或使用 REDDIT_REPLY_MODE=all 展开更多回复;使用 /feedgrab-batch 搜索 reddit-so
  • 对于 Feishu:设置 FEISHU_APP_ID + FEISHU_APP_SECRET 以访问 Open API
  • 对于 KDocs:运行 feedgrab login kdocs 保存会话(或启用 KDOCS_CDP_ENABLED=true 以复用已运行的 Chrome)
  • 对于 FlowUs:付费/私密文档请运行 feedgrab login flowus;默认图片使用带签名的在线 URL,设置 FLOWUS_DOWNLOAD_IMAGES=true 可下载本地附件
  • 对于 Zhihu:运行 feedgrab login zhihu 保存会话(可抓取完整回答内容)
  • 对于 Bilibili 字幕:免费层级(player/v2 + WBI)开箱即用;对于无字幕的视频,可设置 BILIBILI_SUBTITLE_WHISPER=true 使用 Whisper 作为备用方案
  • 对于 Xiaoyuzhou / Ximalaya:设置 GROQ_API_KEY 以使用 Whisper 转录(免费层级仅提供元数据和简介)
  • 对于 付费墙网站:默认启用 PAYWALL_ENABLED=true,无需额外配置
  • 运行 feedgrab doctor 诊断问题

评论

支持 Markdown