Небольшой прототип приложения для подписки на youtube каналы. При появлении новых роликов скачивает видео и загружает в telegram-канал.
- Получите bot_token через @botfather
- Получите api_id и api_hash здесь https://core.telegram.org/api/obtaining_api_id
- Создайте публичный канал в telegram, куда будут загружаться видео с youtube
- Если у вас нет аккаунта на heroku.com, создайте его (на своем хостинге поднимать веселее, но дольше)
- Перейдите по ссылке https://heroku.com/deploy
- Придумайте название приложения латинскими буквами без пробелов(можно дефисы) - будет создан субдомен с таким же именем.
- Заполните поля Config Vars
- APP_NAME - должен совпадать с названием приложения, которое вы придумали.
- MONGODB_PASSWORD, MONGODB_USER, MONGODB_SOCKET_PATH можно не заполнять
- PROD_ENV можно не менять
- SIMPLELOGIN_USERNAME - придумайте имя пользователя для админки (по умолчанию admin)
- SIMPLELOGIN_PASSWORD - придумайте пароль для админки
- TELEGRAM_API_HASH и TELEGRAM_API_ID- значения, которые вы получили на странице https://core.telegram.org/api/obtaining_api_id
- TELEGRAM_ARCHIVE_CHANNEL_USERNAME - название публичного канала, куда будут загружены видео.
- TELEGRAM_BOT_TOKEN - токен, полученный через @botfather
- TELEGRAM_USERNAME - ваш собственный username в telegram
- Нажмите Deploy app и подождите завершения установки
- После завершения установки админка будет доступна по адресу https://<название_приложения>.herokuapp.com/admin
- Перейдите во вкладку Overview, в разделе add-ons нажмите на Heroku scheduler.
- Нажмите Add new job и введите в строку команду
python src/subscriptiontask.py
и выставите частоту обновления(frequency) в значение daily, затем нажмите save.
- Авторизуйтесь по адресу https://<название_приложения>.herokuapp.com/admin
- Перейдите во вкладку channels и нажмите кнопку create
- Укажите channel_id, его можно взять на странице youtube канала (например https://www.youtube.com/channel/UCtI0Hodo5o5dUb67FeUjDeA), где UCtI0Hodo5o5dUb67FeUjDeA - id канала.
- Укажите название канала (можно вписать любое)
- Нажмите Save