Skip to content

Экспортирует чат из ВК и подготавливает для импорта в Telegram

Notifications You must be signed in to change notification settings

Whitenz/vk_messages_to_telegram

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VK message to Telegram

Приложение для создания бэкапа диалога из социальной сети VK и его подготовки для импорта в мессенджер Telegram. На данный момент поддерживается загрузка текстовых сообщений, прикрепленных фотографий и файлов типа "изображение" (.jpg и .gif) из личных диалогов и групповых чатов.

Будут рад предложениям/замечаниям 😉

Принцип работы

  • Приложение работает посредством запросов к официальному API VK, подгружая объекты заданного диалога, затем проводит парсинг данных.
  • Текстовые сообщения форматируются согласно формату сообщений мессенджера Whatsapp, т.к. импорт из него поддерживает Telegram. Затем все сообщения сохраняются в текстовый файл по пути "./backup/id чата/название диалога.txt"
  • Если указано из объекта с сообщением загружаются изображения в наилучшем доступном разрешении и название файла добавляется в текстовый файл с указанием даты и имени отправителя, как это делает Whatsapp
  • С помощью аргументов командной строки можно выбрать какие данных попадут в бэкап: текст (аргумент --text), фотография (аргумент --photo), документ (аргумент --doc)
  • Полученную директорию c бэкапом нужно скопировать на телефон и через проводник отправить в Telegram.
  • Чтобы корректно отображались контакты в чате имена контактов в телефонной книге должны совпадать с именами пользователей в VK. Либо укажите имена контактов самостоятельно, как указано в примере .env.example
  • Внимание !!!! Импорт файлов по непонятной причине работает только на телефонах с ОС iOS. Текст можно импортировать и на Android.

Как запустить приложение

Запустить командную строку:

Windows Скачайте и установите Git Bash. Подробная инструкция и дистрибутив можно найти на сайте. Затем в меню пуск найдите и запустите приложение Git Bash.
Или воспользуйтесь стандартным терминалом Windows Power Shell.
macOS или Linux Откройте главное меню приложений и выберите приложение "Терминал".

Клонировать репозиторий:

git clone https://github.com/Whitenz/vk_messages_to_telegram.git
cd vk_messages_to_telegram

Cоздать и активировать виртуальное окружение:

Windows
python3 -m venv ./venv
source ./venv/Scripts/activate
macOS или Linux
python3 -m venv ./venv
source ./venv/bin/activate

Установить зависимости:

pip install -r requirements.txt

Получить персональный токен VK:

Самый простой способ - воспользоваться официальным приложением vk.com, доступное по ссылке https://vkhost.github.io Там же есть простая инструкция.

Создать файл .env с переменными окружения:

touch .env &&
echo TOKEN='ваш токен VK' > .env &&
echo PEER_ID=id чата >> .env &&
echo MEMBER_NAMES=словарь с id и именами контактов >> .env
echo YOUR_TIMEZONE=часовой пояс относительно UTC >> .env

Не забудьте заменить значения переменных на свои ! Для примера в репозитории лежит файл .env.example !

Запустить модуль main.py с нужными аргументами

Следующая команда создаст бэкап с текстом, фотографиями и файлами-изображений:

python main.py --text --photo --doc # загружает текст, фото и файлы изображений

Учтите, что загрузка файлов может занять много времени и места на диске.

Стек технологий

  • Python 3.11
  • VK API

Лицензия

BSD 3-Clause License

Автор

Ilya Kolesnikov

About

Экспортирует чат из ВК и подготавливает для импорта в Telegram

Topics

Resources

Stars

Watchers

Forks