关于 twitter-media-downloader
twitter-media-downloader 是通过 gallery-dl 从 X/Twitter 链接下载图片和视频的技能。它支持帖子、时间线、媒体页、列表,以及需认证的喜欢内容或书签,并提供筛选和 JSON 输出。
主要功能
- 01下载图片和视频
- 02处理帖子、时间线和列表
- 03使用 Cookie 或浏览器会话认证
- 04按媒体类型和数量筛选
- 05以 JSON 返回下载路径
适用场景
- 01保存单条帖子的媒体
- 02归档账号媒体
- 03选择性下载视频或图片
- 04获取需认证的书签
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ bossjones/ boss-skills --skill twitter-media-downloader安装后在 Claude Code 中输入/twitter-media-downloader确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
LICENSE.txtscripts/download.pyscripts/tests/conftest.pytest_download.py详细介绍
Twitter/X 媒体下载器
使用 gallery-dl 从 X/Twitter 下载图片和视频。
快速开始
使用 Twitter/X URL 运行下载脚本:
uv run scripts/download.py "https://x.com/username" --output ./downloads
支持的 URL 类型
- 单条推文:
https://x.com/user/status/1234567890 - 用户时间线:
https://x.com/username - 用户媒体:
https://x.com/username/media - 用户点赞:
https://x.com/username/likes(需要身份验证) - 书签:
https://x.com/i/bookmarks(需要身份验证) - 列表:
https://x.com/i/lists/1234567890
身份验证
对于受保护的内容(点赞、书签、私密账号),请提供 cookies:
uv run scripts/download.py "URL" --cookies /path/to/cookies.txt
或者直接使用浏览器 cookies(推荐):
uv run scripts/download.py "URL" --browser firefox
注意:建议使用
--browser firefox,它会自动从浏览器会话中提取 cookies。
常用选项
| 选项 | 说明 |
|---|---|
--output DIR | 输出目录(默认:./downloads) |
--cookies FILE | cookies.txt 文件的路径 |
--browser NAME | 从浏览器提取 cookies(firefox、chrome 等) |
--videos-only | 仅下载视频 |
--images-only | 仅下载图片 |
--limit N | 限制下载项目的数量 |
--retweets | 下载用户时间线时包含转推 |
--replies | 下载用户时间线时包含回复 |
--json | 输出包含已下载文件路径的结构化 JSON |
--debug | 启用详细调试输出以排查问题 |
示例
下载某位用户的所有媒体:
uv run scripts/download.py "https://x.com/NASA" --output ./nasa_media
下载单条推文中的媒体:
uv run scripts/download.py "https://x.com/user/status/1234567890"
下载某位用户的纯视频内容(最多 50 条):
uv run scripts/download.py "https://x.com/username" --videos-only --limit 50
使用 Firefox cookies 下载书签:
uv run scripts/download.py "https://x.com/i/bookmarks" --browser firefox
JSON 输出模式
如需编程使用(例如与其他技能集成),请使用 --json 获取结构化输出:
uv run scripts/download.py "https://x.com/user/status/123" --json --videos-only
输出格式:
{
"files": ["/path/to/downloads/twitter_user_123_1.mp4"],
"tweet_id": "123",
"output_dir": "/path/to/downloads",
"url": "https://x.com/user/status/123",
"success": true,
"error": null
}
twitter-to-reel 技能会使用此功能,在创建短片前自动下载视频。
输出结构
文件按以下命名模式保存:
{output_dir}/twitter_{username}_{tweet_id}_{num}.{ext}
故障排除
- 速率限制:使用
--sleep 2在请求之间添加延迟 - 需要登录:使用
--cookies或--browser进行身份验证 - 缺少视频:确保已安装 yt-dlp,以便下载视频
- 调试模式:使用
--debug标志输出详细信息以诊断问题
评论
支持 Markdown