logo NodeSeekbeta

# 三天三夜,五杯咖啡:我把 Telegram 下载器开源了

三天三夜,五杯咖啡。

把自己用了好几个月的 Telegram 下载器,开源了。

这次还给它做了一个原生 Mac 应用。

把喜欢的频道,装进自己的硬盘。

图片、视频、音频、文件,选好要什么,按频道整理,保存到 Mac 或外置硬盘。你已经加入、而且有权访问和保存的私密频道,也能添加。

用 Telegram 最烦的一件事:看到好东西,先放收藏夹。等真要用,消息删了,频道没了,只记得自己好像存过。

所以我做了这个工具。

给频道里的资料、课程、图片留一份本地副本。下次要用,打开自己的文件夹就能找。

我自己也被旧界面整懵过。选完桌面作为保存位置,它居然又让我登录一次。

改掉了。

收不到验证码,能重发;网络通没通,先测试;只想存文字,也能单独选。频道多了,填 CSV 一起导入。

代码和安装包,都放出来了。免费,开源。

Telegram 下载器:把频道内容,收进你的 Mac

下载 Mac 安装包 · GitHub 源码

当前版本 0.1.5,面向 M 系列 Mac、macOS 14+。应用已经正式签名,并通过 Apple 公证。具体检查记录和备用应用 ZIP 在 版本下载页。

先看看,它能做什么

想存什么,自己选。 图片、视频、音频、文件、语音、圆形视频、GIF 动图、文字,八种内容分别勾选。只要视频,就关掉其他类型;只要文字,也可以。

文件不用自己挨个整理。 可以按频道、年月和媒体类型建文件夹,文件名保留消息编号、原文件名或说明。

下载到哪了,看得见。 卡片里能看到完成数量、当前传输、速度和预估剩余时间。已经下载的图片和视频有本地预览,可以暂停,再继续。

账号和频道多,也能管。 多账号分别保存会话、频道和下载记录;频道可以批量导入,附 CSV 模板。

添加频道与查看进度的界面演示

这段使用虚构频道与示例数据展示界面流程,不代表实际下载速度。

安装,拖一下就行

  1. 打开 版本下载页。
  2. 找到 Assets,下载 Telegram-Downloader-0.1.5-arm64.dmg。不用下 source 源码包。
  3. 双击打开 DMG。
  4. 把 Telegram Downloader 拖到 Applications(应用程序)。
  5. 等拷贝结束,从“应用程序”打开它,再弹出安装磁盘。
  6. 首次打开时,按 macOS 正常确认提示继续,然后跟着下面五步走。

Python 和需要的运行组件已经装进应用里。选这台 Mac 上的文件夹、接好的外置硬盘,或者已挂载的网络磁盘,就可以保存。Intel Mac 暂时没有原生安装包。

下面跟着界面走五步。第一次先加一个小频道,确认能保存文件,再批量添加。

先准备自己的 Telegram 账号

已有账号,可以跳过这一段。

没有账号,就从 Telegram 官方应用页面 或手机官方应用商店安装客户端,按提示注册。使用自己能长期接收消息的手机号,确认能登录和打开聊天。

接着进入准备归档的频道。私密频道先通过有效邀请或管理员批准加入,确认你能看到里面的内容。

手机上先保持登录。后面接收登录确认消息会方便一些。

第一步:申请 API ID 和 API Hash

这里需要的是 API ID 和 API Hash。两个都要填,申请一次,后面继续使用。

  1. 打开 Telegram 官方申请页面。
  2. 输入自己的 Telegram 手机号,带国家区号,比如 +86 后接自己的号码。
  3. 去 Telegram 官方消息里找网站发来的确认码,再填回网页。这个网站的确认码通过 Telegram 发送,不是短信。
  4. 登录后进入 API development tools。
  5. 如果已有应用,直接查看凭证;没有,就创建自己的应用。

创建表单可以参考这样填写,按页面实际要求调整:

  • App title:MyDownloader
  • Short name:mydownloader2026
  • Platform:Desktop
  • Description:个人频道内容归档

其他项目按页面要求填写;没有自己的网址,不要填别人的。

创建后找到 App api_id 和 App api_hash。前者是一串数字,后者是一串字符。

回到下载器的“API 凭证”,填入对应位置,点击“保存 API 凭证”。申请流程见 Telegram 官方说明,网站验证码说明见 登录页面。

API Hash、验证码、代理 UUID 是不同的东西。别混填,也别截图发到评论区。

第二步:网络先测通

这台 Mac 可以直接连接 Telegram,就选“直接连接”。

需要代理,就选“导入节点”。粘贴完整分享链接,或者导入自己的 YAML / JSON 配置。

统一入口能识别常见 SS、VLESS、VMess、Trojan 等节点链接,也支持 Clash / Mihomo YAML 等配置。复杂节点以实际识别结果和连接测试为准。

操作顺序:导入 → 识别 → 选节点 → 保存并测试连接。

看到测试成功,再进入下一步。改过连接方式或节点,需要重新测试。

手机能用,不代表 Mac 也通。单独一串 UUID 也不是完整节点链接,要从代理客户端复制节点的分享链接,里面才有服务器、端口和连接参数。

第三步:登录 Telegram

  1. 填写手机号,记得带国家区号。
  2. 点击“获取验证码”,等当前操作结束。
  3. 优先去其他已登录设备的 Telegram 里查看官方消息,再按应用提示检查其他送达方式。
  4. 填入这一次登录的验证码;开启两步验证的,再填自己的两步验证密码。

申请网站的确认码和下载器的登录验证码,是两次不同请求。

没收到,等页面显示可以重新发送,再点“重新发送”。不要连续狂点;Telegram 要求等待时,按提示等。

验证码和两步验证密码不写入配置文件。登录成功后的会话在本机加密保存。

第四步:添加频道,ID 这样找

公开频道:直接复制链接

打开频道资料,复制频道链接,粘贴进下载器。

也可以填 @用户名。

例如 https://t.me/example_channel 或 @example_channel。这里只是格式示例,要换成你自己的频道。

公开频道不必绕一圈去查 -100 ID。

私密频道:先加入,再确认频道 ID

下载器登录的账号,要已经加入目标频道,而且能看到内容。应用不会替你自动加群,也不能用一个数字取得别人的访问权限。

如果 Telegram 允许复制消息链接,可以在频道里选一条消息,右键或长按,找到“复制消息链接”。

假设得到的是:

https://t.me/c/1234567890/42

c/ 后面的 1234567890 是频道数字,最后的 42 是消息编号。

这个示例对应的频道 ID 是:

-1001234567890

把频道 ID 填进“添加频道”,不要把末尾的消息编号也拼进去。格式依据见 Telegram 消息链接 与 频道 ID 转换说明。

有些频道不提供复制或转发入口,不能保证都能靠这个方法拿到 ID。

IDBot 也可以查

例如 @username_to_id_bot,显示名是 IDBot,用来查询用户、群组和频道 ID。

打开机器人,点击 Start / 开始,先看它当前的帮助,再按提示提交它支持的公开用户名或频道信息。

如果它当前提示支持转发识别,只使用允许转发、且你愿意交给第三方的一条普通消息;拿到返回的频道 ID,再填回下载器。这个方式能否用于某个私密频道,要看消息和机器人的限制。

不需要为了查询给它管理权限。不要把验证码、API Hash 或私人内容发给机器人。

添加后看到频道卡片,就继续下一步。加上频道,还不等于开始下载。

第五步:选文件夹,开始下载

点击“选择保存文件夹”,选择这台 Mac 上的可写目录,或者已经连接好的外置磁盘。

建议给它建一个独立文件夹,比如 Telegram 归档,免得桌面堆满。

然后打开 “设置 → 下载内容”,选好这次需要的类型,保存更改。

图片、视频、音频、文件和文字分别选择

准备好后,点击 “开始下载”,去侧栏 “频道与下载” 看状态。

最开始可能先扫描消息。发现符合条件的内容之后,才进入传输。刚开始没有缩略图,不代表没在工作;图片和视频要下载完成后才显示预览。

只下载音频、文件或文字的频道,没有图片预览也正常。

频道多了,再用这些功能

批量导入。 打开“批量导入”,下载 CSV 模板,用 Numbers 或 Excel 保留表头、替换示例频道,保存成 CSV UTF-8。选好文件,点击“检查并预览”,核对可访问、无效和待检查结果,再确认导入。也能直接粘贴多行频道。

文件整理。 按频道建目录,再按年月或媒体类型分类;文件名可保留消息编号,方便和原消息对应。

多账号。 右上角账号菜单可以添加、切换和退出账号,各账号有独立会话、频道与下载记录。切换会先暂停原账号任务;切回来后,按需要继续下载。

换保存位置。 不需要重新登录。新任务用新目录,已有任务继续保存到原位置;软件不会自动搬走已经下载的文件。

下载类型最好在第一次大批量扫描前选好。后来取消某个类型,不会自动删除已经下载的文件,也不代表旧队列立即清空。

卡住了,按这里排查

收不到验证码? 先看其他已登录设备的 Telegram 官方消息,等倒计时结束再重发。

网络测试失败? 检查完整节点信息,再测试下载器自己的连接。

提示 FloodWait? Telegram 要求等待了。按提示等,应用会退避,别反复重试。

频道有了,文件没下? 确认点了“开始下载”,再检查账号权限、下载类型、保存位置和扫描状态。

ID 加不上? 确认账号已经加入,-100 前缀正确,没有带上消息编号。公开频道直接换用链接。

换文件夹后找不到旧文件? 去原目录看,旧文件不会自动搬家。

退出登录会删文件吗? 不会删除已下载文件和记录;继续下载时需要重新登录。

长时间下载,让 Mac 保持唤醒。睡眠时无法持续传输。

源码给你,账号用自己的

公开源码不附带我的 API 凭证、代理节点、登录会话、私人频道记录或下载内容。

你的配置和登录会话默认在本机加密保存,密钥由 Mac 钥匙串保管。应用会连接 Telegram,也会使用你设置的代理。

转发、云盘上传默认关闭。反馈 Bug 时,先把手机号、验证码、节点和私人频道信息遮掉。

这次整理后的版本,184 项本地回归测试通过,GitHub 自动检查也已通过。代码基于 上游项目 改进,保留许可证与第三方声明;原生界面和这次的安全、导入、使用流程都在公开仓库里。

下载应用 · 查看源码 · 完整教程

用得上,去 GitHub 点颗 Star。遇到 Bug,提 Issue,把版本、操作步骤和结果写清楚,账号信息记得遮掉。

教程和下载链接都在这里,发给需要的朋友就能照着走。

你最想备份哪类内容?

12
12

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有72163位seeker

🎉欢迎新用户🎉