python3 -m venv `pwd`/.venv
source ./.venv/bin/activate
python -m pip install -r requirements.txt
-
Выдать ему следующие пермишены для
User Token Scopes
по ссылке https://api.slack.com/apps/{APP_ID}/oauth
channels:history
channels:read
files:read
groups:history
groups:read
im:history
im:read
mpim:history
mpim:read
remote_files:read
- Скопировать
User OAuth Token
Выставляем переменную окружения для чтения слака (можно передать и в сам скрипт параметром -t
)
export SLACK_USER_TOKEN=xoxp-user-token-for-slack
Включаем музыку
https://music.yandex.ru/album/4784938/track/37699817
Запускаем скрипт в первый раз. В случае падения можно повторить - скрипт попробует продолжить с упавшего места.
python run.py load_channel -c hh-dev -l 1000 -d both
Если скрипт пишет no messages found
- значит вся история в прошлое и будущее (с момента последнего запуска) скачана
Скачанные данные скрипт хранит в папке заданной переменной окружения SLACK_EXPORT_ROOT_PATH
(поддерживается только абсолютный путь), либо ~/slack_export
в случае, если переменная не задана.
python run.py download_files -c hh-dev -cc 4
либо сразу для всех
for d in ~/slack_export/channels/* ; do
python run.py download_files -c `basename $d`
done
python run.py load_channels_list
Для корретного сохранения переписок необходимо передавать USER_ID текущего пользователя.
Свой USER_ID можно получить зайдя в свой профиль и нажав на кнопку More
.
python run.py load_im -u U1R8HTQEQ
Выгрузить файлы:
for d in ~/slack_export/direct_messages/* ; do
python run.py download_files -c `basename $d` -d direct_messages
done