Twitter Media Downloader:开源自动化推文媒体归档神器,支持批量下载、智能去重与 API 服务器模式,完美保留时间戳与目录结构

在信息爆炸的社交媒体时代,珍贵的推文、有趣的视频和重要的图片往往稍纵即逝。Twitter Media Downloader (TMD) 是一款基于 Go 语言开发的开源命令行工具,帮助用户高效、完整地归档 Twitter/X 上的媒体内容。

不同于简单的截图或手动保存,TMD 提供了企业级的归档能力:它能批量下载指定用户或列表中的所有视频、图片和 GIF,自动保留推文标题与发布日期(作为文件修改时间),并通过智能去重机制避免重复劳动。无论是个人备份、学术研究还是新闻存档,TMD 都能为你构建一个结构清晰、元数据完整的本地媒体库。

Twitter Media Downloader:开源自动化推文媒体归档神器,支持批量下载、智能去重与 API 服务器模式,完美保留时间戳与目录结构插图

核心亮点:智能、高效、全面

1. 结构化归档与元数据保留

  • 完整元数据:不仅下载媒体文件,还保留推文标题、发布日期(设置为文件修改时间)、用户信息等。
  • 目录结构映射:在本地文件系统中完美复刻 Twitter 的列表(List)和关注(Following)结构,便于分类管理。
  • 个人资料备份:支持下载用户头像、横幅、简介等 Profile 信息,并支持版本管理,记录用户曾用名及状态变化。

2. 智能去重与增量同步

  • 断点续传:每次工作后记录用户最新发布时间,下次运行仅拉取新推文,大幅节省时间和带宽。
  • 符号链接优化:若同一用户出现在多个列表中,本地仅保存一份用户存档,其他位置通过符号链接指向该存档,节省磁盘空间。
  • 失败重试机制:智能识别下载失败的媒体,存储待重试队列,支持“智能部分重试”,仅重新下载失败文件,跳过成功项。
  • 时间线缓存:任意时间段内的推文仅从 Twitter API 拉取一次,避免重复请求,降低被封号风险。

3. 强大的 API 服务器与远程管理

  • HTTP REST API:提供完整的 API 接口,支持远程控制、状态监控及任务调度。
  • Web 管理界面:内置可视化 Web UI,方便非命令行用户操作,实时查看下载进度、日志及用户状态。
  • 定时任务调度:支持 interval(间隔)和 daily(每日)两种模式,自动执行后台下载任务,实现“无人值守”归档。
  • 实时日志流:通过 SSE(Server-Sent Events)推送实时日志,支持级别筛选和关键词搜索,便于故障排查。

4. 灵活的认证与兼容性

  • Cookie 管理:支持主 Cookie 和备用 Cookie 配置,提高获取速度和成功率;支持表单和原始 YAML 编辑。
  • 多源导入:
    • JSON 导入:支持从第三方工具导出的 JSON 文件批量下载。
    • LoongTweet 兼容:可直接读取 TMD 生成的 .loongtweet 文件夹,无缝迁移数据。
  • 大文件流式下载:针对 ≥10MB 的大文件自动启用流式模式,显著降低内存占用,防止 OOM。
  • 用户状态检测:自动识别封禁、注销或受保护用户,避免无效请求和错误日志。
下载地址
夸克
密码:无