twitter-reader

twitter-reader

热门

抓取 Twitter/X 帖子及长文章(X Articles)内容,支持完整图片与元数据提取。当 Claude 需要获取推文/文章正文、作者信息、互动数据及嵌入媒体时使用。支持单条推文与 X 长文章,自动将所有图片下载至本地附件目录,并生成带有正确图片引用的完整 Markdown。对于带有图片的 X 长文章,优先推荐使用本工具而非 Jina。

1310Star
212Fork
更新于 2026/8/1
SKILL.md
只读
名称
twitter-reader
描述

抓取 Twitter/X 帖子及长文章(X Articles)内容,支持完整图片与元数据提取。当 Claude 需要获取推文/文章正文、作者信息、互动数据及嵌入媒体时使用。支持单条推文与 X 长文章,自动将所有图片下载至本地附件目录,并生成带有正确图片引用的完整 Markdown。对于带有图片的 X 长文章,优先推荐使用本工具而非 Jina。

Twitter Reader

获取 Twitter/X 帖子及文章内容,全量支持各类媒体资源。

快速开始(推荐)

针对带图片的 X 长文章,请使用全新的 fetch_article.py 脚本:

uv run --with pyyaml python scripts/fetch_article.py <article_url> [output_dir]

示例:

uv run --with pyyaml python scripts/fetch_article.py \
  https://x.com/HiTw93/status/2040047268221608281 \
  ./Clippings

执行流程:

  • 通过 twitter-cli 获取结构化数据(点赞、转推、书签数)
  • 通过 jina.ai API 获取正文及图片
  • 将所有图片下载至 attachments/YYYY-MM-DD-AUTHOR-TITLE/ 目录
  • 生成嵌入本地图片引用的完整 Markdown
  • 自动包含带有元数据的 YAML frontmatter

输出示例

Fetching: https://x.com/HiTw93/status/2040047268221608281
--------------------------------------------------
Getting metadata...
Title: 你不知道的大模型训练:原理、路径与新实践
Author: Tw93
Likes: 1648

Getting content and images...
Images: 15

Downloading 15 images...
  ✓ 01-image.jpg
  ✓ 02-image.jpg
  ...

✓ Saved: ./Clippings/2026-04-03-文章标题.md
✓ Images: ./Clippings/attachments/2026-04-03-HiTw93-.../ (15 downloaded)

替代方案:Jina API(仅纯文本)

适用于无需身份验证的极简纯文本抓取:

# 单条推文
curl "https://r.jina.ai/https://x.com/USER/status/TWEET_ID" \
  -H "Authorization: Bearer ${JINA_API_KEY}"

# 批量抓取
scripts/fetch_tweets.sh url1 url2 url3

功能特性

完整文章模式 (fetch_article.py)

  • ✅ 结构化元数据(作者、发布日期、互动指标数据)
  • ✅ 自动下载图片(涵盖所有嵌入媒体资源)
  • ✅ 生成引用本地图片的完整 Markdown
  • ✅ 提供兼容 PKM 系统(如 Obsidian 等)的 YAML frontmatter
  • ✅ 完美支持 X Articles(长文章格式)

极简模式 (Jina API)

  • 仅抓取纯文本正文
  • 除 Jina API Key 外,无需任何其他鉴权配置
  • 适用于快速提取文本内容

前置要求

完整文章模式所需依赖

  • uv(Python 包管理器)
  • 无需额外配置(twitter-cli 将自动安装)

极简模式 (Jina) 所需配置

export JINA_API_KEY="your_api_key_here"
# 可从 https://jina.ai/ 获取

输出目录结构

output_dir/
├── YYYY-MM-DD-article-title.md       # Markdown 主文件
└── attachments/
    └── YYYY-MM-DD-author-title/
        ├── 01-image.jpg
        ├── 02-image.jpg
        └── ...

返回内容说明

完整文章模式

  • YAML Frontmatter:来源链接 (source)、作者 (author)、日期 (date)、点赞数 (likes)、转推数 (retweets)、书签数 (bookmarks)
  • Markdown 正文:内嵌本地图片引用的完整文章正文
  • 附件目录:所有已下载的图片文件,存放于专属目录

极简模式

  • Title:帖子作者与内容预览
  • URL Source:原始推文链接
  • Published Time:GMT 时间戳
  • Markdown 正文:带远程媒体 URL 的纯文本内容

支持的 URL 格式

  • https://x.com/USER/status/ID(推文帖子)
  • https://x.com/USER/article/ID(X 长文章)
  • https://twitter.com/USER/status/ID(旧版 Twitter 链接)

脚本说明

fetch_article.py

功能齐全的文章抓取工具,支持自动下载图片:

uv run --with pyyaml python scripts/fetch_article.py <url> [output_dir]

fetch_tweet.py

基于 Jina API 的简单纯文本抓取工具:

python scripts/fetch_tweet.py <tweet_url> [output_file]

fetch_tweets.sh

批量抓取多条推文的脚本(基于 Jina API):

scripts/fetch_tweets.sh <url1> <url2> ...

从旧版 Jina API 迁移

旧工作流:

curl "https://r.jina.ai/https://x.com/..."
# 手动提取正文并手动下载图片

新工作流:

uv run --with pyyaml python scripts/fetch_article.py <url>
# 一键自动下载图片,生成完整 Markdown