如何备份电报聊天?

How to backup Telegram chat?

我发现类似此代码的内容可以发送到 Telegram-CLI,但我不知道它的含义或如何操作,所以如果有人能一步一步地向我解释,我会很高兴。 https://github.com/psamim/telegram-cli-backup

出于某种原因,我无法使用那里给定的代码安装 sqlite3。 我正在使用 windows,是否需要启动至 Ubuntu 才能执行此操作? 无论如何,像我3岁一样向我解释,以防我什么都不知道。

非常感谢。

看来我可以帮到你一点忙。 我正在使用 Ubuntu 并且我写了这个 Bash-script:

#!/bin/bash

TOKEN='YourBot:Token'

URL='https://api.telegram.org/bot'$TOKEN

UPD_URL=$URL'/getUpdates?offset='


function get_offset {

        res=$(curl $UPD_URL$OFFSET)
        OFFSET=$(echo $res | grep "update_id" | cut -f 4 -d ':' | cut -f 1 -d ',' | head -1)
        OFFSET=$((OFFSET+1))
}


while :
    do

get_offset


if echo $res | grep "message"

then echo $res >> BackupChat.txt

fi


done

这是非常简单的bash脚本。 显然,您必须创建自己的机器人并将机器人添加到您要备份的聊天中。 这个脚本的坏处是它很难读取带有大量垃圾的文本日志文件,如 "username" "date" "::" 等。但它可以改进,使正常输出看起来很酷数据库。

我希望你有足够的 Linux 技能来自己制作它。

如果您正在使用 windows,请查看说明 here。我只在 Linux 中尝试过,你问题中的 link(使用 Lua)有效。

以下脚本也能很好地完成工作

Python 备份一切的脚本 https://github.com/tvdstaaij/telegram-json-backup

这是 https://github.com/tvdstaaij/telegram-history-dump

的 ruby 版本

提到的脚本已更新,现在它将对话保存到 CSV 文件中,不再需要 sqlite3 库。只需要 lua.

我认为自从提出这个问题后情况有所改善,所以这里是一个不需要任何编程技能或命令行工具的 2020 年的答案。


要备份(又名 "export")您的 Telegram 聊天记录,请在此处下载桌面客户端:

例如Linux,将下载的文件解压到任何子目录,如~/tmp/,然后从那里启动客户端,如

$ cd ~/tmp/Telegram
$ ./Telegram

您需要先使用您的 phone 号码注册,就像在任何其他 Telegram 设备上一样,通过发送到您已登录的电报帐户的确认码。

用户界面与网络界面相似。

进入您感兴趣的聊天,然后在右上角的菜单中选择 "Export chat history"。单击您感兴趣的所有复选框,如媒体文件、GIF、贴纸等,然后单击导出。

默认情况下,它会在 ~/Downloads/Telegram Desktop/ 下生成一个完整的 HTML 文件和子目录结构,您可以像这样打开它们:

firefox  ~/Downloads/Telegram\ Desktop/ChatExport_01_02_2020/messages.html

如果您需要更完整的所有聊天记录备份,可以转到左上角的中央菜单(3 个小条),然后 "Settings" -> "Advanced" -> "Data and Storage" 选择 "Export Telegram data"。在那里,您还可以单击您感兴趣的复选框。靠近底部的是 HTML 用于 humas 或机器可读 JSON.

之间的选择

在第一个导出请求中,它首先要求您在 另一个 电报实例上确认以允许导出请求,以避免误用。一旦你确认,例如从您的手机 phone,您可以再次导出并按上述步骤继续操作,无需任何进一步确认。