news 2026/9/10 6:01:47

telegram-history-dump与telegram-cli:打造专业的Telegram备份系统

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
telegram-history-dump与telegram-cli:打造专业的Telegram备份系统

telegram-history-dump与telegram-cli:打造专业的Telegram备份系统

telegram-history-dump是一款基于Ruby开发的Telegram聊天记录备份工具,它利用telegram-cli的远程控制功能,帮助用户轻松创建个人和群组对话的备份。这款工具不仅支持多种输出格式,还能实现增量备份,让你的聊天记录永不丢失。

🌟 为什么选择telegram-history-dump?

相比其他备份工具,telegram-history-dump具有以下显著优势:

  • 增强的媒体下载支持:轻松保存聊天中的图片、视频等媒体文件
  • 多格式输出:支持JSON、HTML、纯文本等多种格式,满足不同需求
  • 增量备份:仅下载新消息,节省时间和带宽
  • 独立于不稳定绑定:不依赖telegram-cli中不稳定的Python/Lua绑定
  • 灵活配置:通过YAML格式的配置文件自定义备份策略

📋 准备工作:安装与配置

1️⃣ 编译telegram-cli

首先需要编译[telegram-cli][3],首次启动时会引导你关联Telegram账户。这是与Telegram服务器通信的基础组件,确保它能正常运行是成功备份的第一步。

2️⃣ 检查Ruby环境

确保系统已安装Ruby 2.0或更高版本:

ruby --version

3️⃣ 获取项目代码

克隆仓库到本地:

git clone https://gitcode.com/gh_mirrors/te/telegram-history-dump

4️⃣ 配置备份策略(可选)

编辑配置文件config.yaml来自定义你的备份需求。默认配置会将所有对话备份到output目录,采用JSON格式,不下载媒体文件。你可以根据需要调整参数,如设置媒体下载选项、更改输出格式等。

🚀 开始备份:简单两步

步骤1:启动telegram-cli

使用以下命令启动telegram-cli,确保启用JSON输出和端口监听:

telegram-cli --json -P 9009

步骤2:运行备份脚本

在telegram-cli运行的同时,执行备份脚本:

ruby telegram-history-dump.rb

📊 多样化输出格式:满足不同需求

telegram-history-dump支持多种输出格式,你可以在配置文件中启用一个或多个格式化模块:

  • HTML格式:formatters/html.rb创建带有样式的分页聊天记录,可通过网页浏览器查看,最终生成的文件位于output/formatted/html/index.html
  • 纯文本格式:formatters/plaintext.rb创建人类可读的文本文件,按日期组织
  • 精简格式:formatters/bare.rb仅输出消息文本,适合语言/统计分析
  • PISG格式:formatters/pisg.rb创建与EnergyMech IRC日志格式兼容的每日日志,可作为[PISG][7]聊天统计生成器的输入

你还可以实现自定义格式化器,详情请参见formatters/lib/formatter_base.rb。

⚙️ 命令行选项:灵活控制备份过程

虽然大部分配置通过配置文件完成,但telegram-history-dump也提供了一些实用的命令行选项:

Usage: telegram-history-dump.rb [options] -c, --config=cfg.yaml 指定YAML配置文件路径 -k, --kill-tg 备份完成后关闭telegram-cli -h, --help 显示帮助信息 -d, --dir=DIR 输出文件子目录(相对于配置中的backup_dir) -l, --limit=LIMIT 每个目标的最大消息备份数量(覆盖YAML配置)

💡 使用技巧与注意事项

  • 远程运行telegram-cli:可以在其他机器(如服务器)上运行telegram-cli作为守护进程。此时需要向telegram-cli传递--accept-any-tcp选项,并适当配置防火墙以防止不必要的暴露。注意远程设置下某些媒体文件相关选项可能无法正常工作。

  • 控制请求频率:谨慎调整chunk_delay(块延迟)和chunk_size(块大小)参数。Telegram对历史记录请求有速率限制,过快的请求可能导致操作超时,迫使脚本跳过部分备份内容。

  • 处理telegram-cli问题:已知一些telegram-cli问题可能影响备份:

    • 当备份超过100条消息的频道时,可能会导致崩溃[vysheng/tg#947][9]
    • 当对话包含特定媒体文件时,可能会导致崩溃[vysheng/tg#904][10]。如果遇到此问题,请按照建议的解决方法重新编译telegram-cli。

通过telegram-history-dump和telegram-cli的强大组合,你可以轻松构建一个专业的Telegram备份系统,确保珍贵的聊天记录安全保存。无论是日常备份还是迁移数据,这款工具都能满足你的需求。

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/10 6:01:31

diagram-design:前端可视化决策系统实战指南

1. “diagram-design”不是一张图,而是一套前端可视化决策系统“diagram-design”这个词在2024年技术社区里高频出现,但它从来就不是某个具体工具、库或插件的代号——它是一类问题的统称:如何在现代Web环境中,以可控、可维护、可…

作者头像 李华
网站建设 2026/9/10 6:00:37

CANN/GE子图边界类简介

简介 【免费下载链接】ge GE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好…

作者头像 李华
网站建设 2026/9/10 5:59:29

红外干扰弹识别:基于热辐射建模的轻量级算法实现

简介:本资源聚焦红外干扰弹的自动识别技术,面向军事电子、红外成像与目标检测方向的研究者及算法工程师,解决复杂红外场景下干扰弹与真实目标的区分难题。压缩包仅含1个MATLAB脚本文件(mubiaoshibie.m),体积…

作者头像 李华
网站建设 2026/9/10 5:57:40

LaTeX+GitHub+Python构建AI求职系统:ATS友好简历与工程化求职流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/10 5:56:52

5.1V稳压二极管MMBZ5231BLT1G:型号拆解与电路设计全指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华