一键下载 X/Twitter 的图片、视频和 GIF。默认以用户 ID 和帖子 ID 保存,可通过集成的设置页面自由自定义文件名和日期格式。支持在 iPhone 和 Android 上通过 ZIP 压缩一键批量下载媒体。除本地保存下载历史记录外,还支持选择利用 X 的书签功能实现跨设备在线同步。
此脚本是一款可以让你一键下载 X(原 Twitter)上图片、视频及 GIF 的工具。视频将默认下载最高画质,图片则会以原图尺寸(4096x4096px)进行下载。
当推文包含多个媒体文件时,在 PC 端会分别单独下载,而在移动端(智能手机)环境下则会自动打包成一个 ZIP 文件进行批量下载。此外,下载历史会自动保存,您也可以选择启用 X 的书签功能,将下载历史在线同步至其他设备。
无论是 PC 还是移动端,只要是最新版本的浏览器均可使用。
基于以下脚本开发:
在新版本中,X 的「设置」页面内会自动插入「媒体下载器设置」菜单。 点击齿轮图标的菜单即可打开专用的设置窗口(弹窗),您可以在此画面上进行以下所有设置。
下载的文件名称可以使用指定的变量自由更改为您喜欢的格式。无需直接修改代码。
{userId}:用户 ID(@ 后方的英数字){userName}:用户名(显示名称){postId}:推文 ID{postTime}:投稿时间(将套用您设置的时间格式){mediaType}:媒体类型(img / video / gif){index}:多张媒体时的序列号格式示例
- 默认(用户 ID 与推文 ID):
{userId}-{postId}-{mediaType}{index}- 示例 1(包含投稿时间 YYYYMMDD_HHmmss):
{userId}_{postId}-{postTime}-{mediaType}{index}(在日期格式栏位中输入YYYYMMDD_HHmmss)- 示例 2(仅用户名与日期 YYYYMMDD):
{userName}_{postId}-{postTime}(在日期格式栏位中输入YYYYMMDD)关于日期的详细指定方式,请参阅 dayjs 文档。
您可以利用 X 官方的书签功能,将下载历史与其他设备(PC 或其他手机)进行在线同步。
在更换浏览器或进行备份时,您可以将过去的下载历史保存为 JSON 文件并进行恢复。只需点击设置画面下方的「导出历史数据」或「导入历史数据」按钮,即可一键完成。
若在 iPhone 等 iOS 环境下下载失败或卡住,本工具提供了传统的「强制使用 Data URL 格式下载」选项。如果标准的 Blob 格式失败,请在设置画面中勾选此项目并重试。
在 iOS 上下载的 ZIP 文件可以使用专用快捷指令轻松整理。
Q: 如果没有显示下载按钮该怎么办?
A: 请尝试刷新页面(重新加载)或清除浏览器缓存。此外,请确认您的浏览器及脚本管理器(如 Tampermonkey)是否为最新版本。
Q: 我不知道该如何解压 ZIP 文件。
A: 在 iPhone/iPad 上,您可以使用上方介绍的「专用快捷指令」,或是直接在 iOS 自带的「文件」App 中点击该文件进行解压。在 Android 上,您也可以使用自带的文件管理 App(如 Files by Google)轻松解压。
Q: 下载过程中发生错误该怎么办?
A: 请检查您的网络环境。此外,有可能是因为 X 的规则变更导致暂时无法获取媒体。在这种情况下,请等待脚本更新。
Q: 下载多个媒体时,运行方式是什么?
A: 如果只有一个媒体,会直接以原始文件分别下载。如果有多个媒体,在 PC 环境下会根据设置连续分别下载,而在移动端环境(手机/平板)下则会自动打包成一个 ZIP 文件。
Q: 在 iPhone 上为了更改文件名或设置,需要修改代码吗?
A: 不需要。 在新版本中,您可以直接在 X 内的「媒体下载器设置」画面中通过 GUI 进行所有修改。不再需要直接修改代码。
Q: 该如何清除下载历史(完成标记)?
A: 若使用 PC 浏览器,请打开开发者工具(F12),在应用(Application)标签页中删除 IndexedDB 内的 DownloadHistoryDB。如果在移动端浏览器上难以操作,请从浏览器设置中清除 X(x.com / twitter.com)的网站数据与 Cookie。
Q: 如果有问题或想反馈错误,该去哪里反应?
A: 请至脚本发布页面的「反馈(Feedback)」标签页中,详细说明您遇到的状况。
本脚本基于 MIT 许可协议公开。详细信息请参阅 MIT 许可协议指南。
© 2026 Azuki. All rights reserved.