Як експортувати історію чату Telegram у HTML і JSON
Як експортувати історію чату Telegram у читабельний HTML або в JSON: медіа лишаються поруч на диску, а текст можна зберегти лише за вибраними повідомленнями.
6 хв читання
Щоб експортувати історію чату Telegram, потрібна програма, яка читає переписку так, як її бачите ви, і записує її на ваш власний диск. TelegramBuddy робить це у трьох виглядах: читабельна сторінка HTML, яку можна відкрити в будь-якому браузері, файл JSON для всього, що потребує структурованих даних, і звичайний текстовий файл лише з тими повідомленнями, які ви відібрали самі. Це безкоштовна програма для комп’ютера — для macOS і Windows, а на Linux вона запускається з вихідного коду. Це не бот і не вебсайт: ви входите у свій власний Telegram за QR-кодом або номером телефону, а експорт записується просто в папку на вашому комп’ютері.
Який вигляд потрібен саме вам, зводиться до одного питання: це читатиме людина чи програма?
HTML чи JSON: який експорт підійде саме вам
Обидва охоплюють ту саму переписку. Різниця в тому, для кого призначений файл.
| Сторінка HTML | Файл JSON | |
|---|---|---|
| Що ви отримуєте | Одна сторінка, викладена в порядку читання | По одному структурованому запису на кожне повідомлення |
| Чим відкрити | Будь-який веб-браузер | Усе, що читає JSON — скрипт, імпорт у таблицю, інша програма |
| Найкраще для | Читання, зберігання, передавання комусь іншому | Масового пошуку, підрахунків, перенесення даних в інше місце |
| Медіа | Посилаються на файли на вашому диску | Указані за назвою файлу та шляхом |
| Приємно читати | Так | Не дуже |
Просте правило: HTML — це та копія, яку ви справді відкриєте за три роки. JSON — та копія, якій ви будете раді, коли захочете зробити щось, чого ніхто не планував: витягти всі посилання, які колись публікували в групі, підрахувати повідомлення за місяцями, передати переписку в інший інструмент. Це не «або-або», і надійніше за замовчуванням експортувати обидва.
Як експортувати історію чату Telegram: крок за кроком
Порядок тут важливіший, ніж здається, бо експорт посилається на медіафайли, а не несе їх у собі. Спочатку завантаження, потім експорт — і кожне посилання в готовій сторінці відкриється.
- Увійдіть. Відкрийте програму та увійдіть у свій власний Telegram за QR-кодом або номером телефону. Під час першого запуску вона попросить api_id та api_hash — їх безкоштовно видає Telegram на my.telegram.org у розділі «API development tools». Це приблизно дві хвилини, робиться один раз, а самі значення залишаються на вашому комп’ютері. Покрокова інструкція є в гайді як отримати api_id та api_hash для Telegram.
- Відкрийте потрібний чат. Виберіть його зі списку чатів або вставте @username, числовий id, посилання-запрошення
t.me/+чи приватне посиланняt.me/c/<id>/<message>, щоб відкрити те, чого у списку ще немає. Приватні групи та канали працюють, якщо ви є їхнім учасником — див. як завантажувати з приватного каналу Telegram. - Завантажте медіа. Скористайтеся масовим завантаженням, щоб забрати з чату кожен відповідний файл, просканувавши всю історію, або виділіть повідомлення вручну у вигляді чату. Можна поставити в чергу кілька чатів одразу й залишити програму працювати.
- Дайте їй завершити. Довга історія забирає час, і Telegram іноді просить програму пригальмувати; ці паузи вона відпрацьовує сама. Великі файли продовжуються з того місця, де зупинилися, а не починаються заново — це важливо на нестабільному зв’язку, і про це є окремий гайд: як відновити перервані завантаження в Telegram.
- Експортуйте чат. Виберіть HTML, JSON або обидва. Експорт записується поруч із вашими файлами.
- Перевірте одну річ. Відкрийте сторінку HTML і клацніть на фото та на відео. Якщо вони відкриваються, ваш архів цілий, і його можна прибрати в надійне місце.
Формально крок 3 необов’язковий — переписку можна експортувати й саму по собі. Але експорт, чиї медіа так і не завантажилися, — це стенограма з мертвими посиланнями, а це рідко те, що хтось має на увазі під словом «архів».
Як експорт пов’язаний із завантаженими медіа
Експорт не запихає зображення в один величезний файл. Він указує на справжні файли на вашому диску — тому вони залишаються придатними самі по собі, а сторінка відкривається миттєво.
Файли зберігаються в окрему папку для кожного чату, і кожен чат можна розкласти у підпапки Photos (Фото), Videos (Відео), Files (Файли), Music (Музика) та Voice (Голосові). Кожен файл зберігає назву, яку дав йому Telegram. Файли, що приходять зовсім без назви — а це більшість фото й багато відео — отримують назву за id повідомлення, з якого прийшли: фото з повідомлення 4182 стає 4182.jpg. Якщо два справді різні файли мають однакову назву, пізніший отримує id повідомлення в дужках: report (4193).pdf. Ніщо не перезаписується потай.
Два практичні висновки:
- Тримайте папку й експорт разом. Експорт посилається на файли за їхнім місцем у цій папці. Переносьте всю папку чату куди завгодно; але перенесіть сторінку HTML окремо від неї — і посилання зламаються. Коли робите резервну копію архіву, копіюйте папку.
- Дати збігаються. Час кожного файлу виставлено за датою публікації повідомлення, а не за датою завантаження. Відсортуйте папку чату за датою у Finder чи Проводнику — і ви отримаєте той порядок, у якому переписка й відбувалася. Завдяки цьому папку зручно переглядати навіть без відкритого експорту.
Як зберегти текст лише потрібних повідомлень
Повний експорт — не той інструмент для «десь у цьому обговоренні була адреса». Для такого швидший вигляд чату.
У вигляді чату видно всю переписку від найстаріших повідомлень до найновіших — текст і медіа разом, з розділювачами днів і мініатюрами, а старіші повідомлення довантажуються, коли ви прокручуєте вгору. Клацніть на повідомлення, щоб вибрати його, клацніть із Shift, щоб узяти діапазон, або скористайтеся Вибрати все, Лише файли чи Лише текст, щоб захопити все одним рухом. Коли виділення зроблено, збережіть текст у файл .txt — і ви отримаєте саме ці повідомлення, у порядку чату, і нічого зайвого.
Саме це потрібно, щоб витягти ухвалені рішення з робочої групи на 900 повідомлень, зберегти рецепт, який хтось надіслав, або зібрати всі посилання з каналу для читання. Це займає секунди й дає файл, настільки невеликий, що його можна вставити в нотатку.
Як оновлювати архів, не починаючи все заново
Канали продовжують публікувати, тож експорт — це знімок, а не живе дзеркало. Оновити його недорого: пройдіться тим самим чатом ще раз, і вже завершені файли буде пропущено, тож завантажиться лише нове. А потім експортуйте ще раз поверх.
Тому щомісячне або щоквартальне оновлення — цілком розумна звичка для каналу, який вам важливий, і саме тому повільним є лише перший прохід.
Що таке експорт, а що ним не є
Варто чесно сказати про межі:
- Програма бачить рівно те, що бачить ваш акаунт. Чати, де ви є учасником, і не більше. Жодного чорного ходу в канал, у якому вас ніколи не було.
- Це знімок того моменту, коли ви його зробили. Далі ніщо не синхронізується, поки ви не запустите експорт знову.
- Ніщо не проходить через чужий сервер. Акаунта TelegramBuddy не існує, як і кроку вивантаження: програма звертається до Telegram напряму й записує на ваш диск. Ваша сесія входу — це файл на вашій власній машині. Це незалежний проєкт, не пов’язаний із Telegram.
- Можливість щось зберегти — це не те саме, що право це зберігати чи поширювати. Платні курси, ліцензійні фільми та чужа робота залишаються чужими. Архівуйте те, що маєте право архівувати.
Куди далі
Якщо ви налаштовуєте все вперше, крок з api_id — єдина частина, для якої потрібно вийти з програми, тож почніть саме з нього. Якщо ви ще зважуєте, чи покриває програма ваші потреби, сторінка можливостей збирає в одному місці вигляд чату, сітку галереї, масове завантаження та поведінку експорту, а питання й відповіді відповідають на короткі запитання — куди зберігаються файли, що буде при обриві зв’язку, якими з восьми мов доступний інтерфейс.