Skip to content

Skip-Bug/api_lesson_6

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Публикация комиксов

Автоматическая публикация комиксов xkcd в Telegram и ВКонтакте.

📖 Описание

Проект скачивает комиксы с xkcd.com и публикует их в:

  • Telegram-канал (через start_bot.py)
  • ВКонтакте (через vk_poster.py)

📚 Скрипты проекта

Файл Описание
comic_loader.py Скачивание комиксов с xkcd.com
start_bot.py Отправка комикса в Telegram канал
vk_poster.py Публикация комикса ВКонтакте
utils.py Вспомогательные функции

⚙️Что нужно сделать перед запуском

Проверьте версию Python:

python --version
  • Должна быть версия 3.8 или выше
# Клонировать репозиторий
git clone https://github.com/Skip-Bug/api_lesson_6
cd api_lesson_6

# Установить зависимости
pip install -r requirements.txt

🔧 Настройка

Часть настроек проекта берётся из переменных окружения.
Чтобы их определить, создайте файл .env рядом с main.py
и запишите туда данные в таком формате: ПЕРЕМЕННАЯ=значение.
⚠️ Файл .env содержит секретные ключи и не должен коммититься в репозиторий.

# Telegram
TG_BOT_TOKEN=ваш_токен_бота
TG_CHANNEL_ID=@ваш_канал или -100xxxxxxxxxx

# ВКонтакте
VK_KEY=ваш_персональный_токен
GROUP_ID=ID_группы

Как получить токены:

Telegram:

Инструкция регистрации для Бота

И получения его TG_BOT_TOKEN
Также понадобится канал TG_CHANNEL_ID в telegram и его название:
публичный пишут @мой_канал, а частный (-1003711383499)
Добавьте бота в канал как администратора

ВКонтакте: Создайте группу в ВКонтакте ID группы — числовой идентификатор вашего сообщества. Узнать можно ID группы вставив ссылку ваше группы

Получить токен Вконтакте: Зайдите на сайт Создайте Standalone-приложение После пройдте сюда Screenshot 2026-04-19 182414 Выберите приложение Kate Mobile Авторизуйтесь (если требуется) и разрешите доступ Screenshot 2026-04-19 183224 Скопируйте часть адресной строки от access_token= до &expires_in. Токен будет начинаться с vk1.a. — это токен нового поколения VK ID.

🚀 Запуск

Telegram (отправка одного комикса)

# Публикует последний комикс и завершает работу
python start_bot.py

# Конкретный комикс
python start_bot.py -x 123

# Случайный комикс
python start_bot.py -x 0

ВКонтакте (отправка одного комикса)

# Случайный комикс
python vk_poster.py

📁 Структура проекта

api_lesson_6/
├── comic_loader.py      # Загрузка комиксов с xkcd.com
├── start_bot.py         # Отправка в Telegram
├── vk_poster.py         # Публикация ВКонтакте
├── utils.py             # Вспомогательные функции
├── images/              # Папка для скачанных комиксов
├── .env                 # Переменные окружения (токены)
└── requirements.txt     # Зависимости

📝 Примечания

  • start_bot.py / vk_poster.py — скачивают комикс во временный файл в корень и удаляют после публикации
  • comic_loader.py — скачивает в папку images/ (аргумент -p)
  • Оба скрипта отправки (start_bot.py, vk_poster.py) публикуют один комикс и завершают работу

🎓 Цель проекта

Код написан в образовательных целях на курсе dvmn.org по веб-разработке.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages