Приложение для создания бэкапа диалога из социальной сети 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
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.com, доступное по ссылке https://vkhost.github.io Там же есть простая инструкция.
touch .env &&
echo TOKEN='ваш токен VK' > .env &&
echo PEER_ID=id чата >> .env &&
echo MEMBER_NAMES=словарь с id и именами контактов >> .env
echo YOUR_TIMEZONE=часовой пояс относительно UTC >> .env
Не забудьте заменить значения переменных на свои ! Для примера в репозитории лежит файл .env.example !
Следующая команда создаст бэкап с текстом, фотографиями и файлами-изображений:
python main.py --text --photo --doc # загружает текст, фото и файлы изображений
Учтите, что загрузка файлов может занять много времени и места на диске.
- Python 3.11
- VK API
BSD 3-Clause License
Ilya Kolesnikov