Разработка этого скрипта прекращена. Ещё какое-то время он будет кое-как работать при всех своих багах, пока используемую версию API не прикроют (однако сохранение лайкнутых фото/видео/т.п. скоро перестанет работать)
На данный момент иногда пользователи определяются как {unknown user}
. Решения проблемы пока нет (#24).
- склонировать/скачать репозиторий
- установить зависимости
pip3 install -r requirements.txt
Для загрузки видео из некоторых сторонних источников (например, RuTube) youtube-dl
использует ffmpeg
, который необходимо установить отдельно.
Если Вы используете Windows ниже 10 версии, дополнительно установите пакет colorama
:
pip3 install colorama
Все доступные аргументы можно посмотреть при запуске с --help
.
Для сохранения нескольких типов данных за один вызов необходимо указывать каждый тип отдельным аргументом dump
.
Например, для сохранения фото и документов надо запускать dump.py --dump photo --dump docs
.
Возможны два способа аутентификации - с помощью пары логин-пароль или токена. Авторизация по логину идёт с данными от Kate Mobile.
Для входа по токену необходимо передать аргумент token
при запуске:
python3 dump.py --token your_token_here
Количество процессов, создаваемых для загрузки, по умолчанию равняется 4*потоки
.
При загрузке видео - числу, заданному в настройках, но не больше количества потоков. Такое ограничение введено ввиду отсутствия смысла в спаме лишними процессами при загрузке больших по размеру видео (однако лимит всё же убирается через настройки).
- Фото
- Видео
- Аудио
- Документы
- Диалоги (txt) и вложения (фото, видео, документы, голосовые)
- Вложения понравившихся постов (фото, видео, документы)
- Понравившиеся фотографии
- Понравившиеся видео
- прочее, прочее, прочее ;)
Любые предложения и репорты о багах приветствуются :з
Для сохранения или исключения определённых диалогов необходимо вручную подредактировать конфиг settings.ini
.
ID диалогов перечисляются через запятую. Получить его можно, например, открыв диалог в разделе сообщений, тогда в URL вроде https://vk.com/im?sel=100
идентификатором будет являться кусок, идущий после sel=
.
Пример исключения диалога с ID 100
и беседы c60
:
[EXCLUDED_DIALOGS]
id = 100,c60
Сохранение только диалога с ID 100
и исключения всех остальных:
[DUMP_DIALOGS_ONLY]
id = 100
Если включена, при кэшировании будут получены не все сообщения, а только с ID больше последнего записанного (последняя строка в файле).
Q: Можно ли не вводить каждый раз логин и пароль (и код 2FA) при авторизации?
A: Просто передавайте логин аргументом (--login
) или вводите пустой пароль на экране авторизации. В таком случае данные будут подтянуты из конфига vk_api
.
Q: Ошибка vk_api.exceptions.AccessDenied: You don't have permissions to browse user's audio
A: К сожалению, vk_api
не поддерживает сохранение аудио при входе по токену. Ну или же попробуйте удалить файл vk_config.v2.json
и переавторизироваться, если это не Ваш случай ¯\_(ツ)_/¯
Q: Ошибка RegexNotFoundError('Unable to extract %s' % _name)
A: Обновите youtube_dl
: pip3 install --upgrade youtube_dl
.