Skip to content

Latest commit

 

History

History
67 lines (52 loc) · 3.92 KB

README.md

File metadata and controls

67 lines (52 loc) · 3.92 KB

Telegram bot with Django

Описание приложения:

Приложение состоит из двух частей: телеграм бота и веб-сервиса на Django.

Телеграм бот:

Телеграм бот работает с двумя API, а именно: OpenWeatherMap и New-York Times API
OpenWeatherMap отдает нам актуальные данные по погоде выбранного региона.
New-York Times API отдает нам актуальные новости, в нашем случае - актуальные популярные новости за последнее время.

Примечание к работе команд бота:

Команда /weather [город] корректно возвращает погоду в выбранном городе, только если вводить название города на английском языке. Работает через OpenWeatherMap API.
Команда /news возвращает случайную популярную новость за последнее время. Работает через New-York Times API.

Веб-сервис на Django:

Веб-сервис на Django отвечает за администрирование и сбор аналитических данных бота для администрации.
Присутствует аутентификация и разделение прав и ролей пользователей, т.е. для обычных пользователей предоставлена возможность просматривать список команд и последние сообщения бота. Однако редактирование команд и просмотр аналитики доступен только пользователям с выданным доступом.

Инструменты разработки:

  • Python
  • Django
  • Aiogram
  • JavaScript
  • HTML
  • CSS

Начало работы:

1. Клонируйте репозиторий следующей командой:

git clone https://github.com/MidnightRoam/tg_bot_aiogram_django.git

2. Перейдите в корневую папку проекта и установите все зависимости следующей командой:

pip install -r requirements.txt

3. После установления всех зависимостей перейдите в папку service и запустите миграции базы данных:

cd service (для Windows)
python manage.py migrate

4. Запустите локальный сервер Django:

python manage.py runserver

5. Запустите файл bot.py, который отвечает за работу бота

Находясь в директории aiogram_django/service введите в терминал bot.py

6. Вы должны видеть следующие строки в терминале, которые подтверждают, что ошибок нет

Updates were skipped successfully
Data base is connected successfully
Bot is started successfully

7. После всех предыдущих шагов наш бот и веб-сервис успешно запущены, чтобы начать пользоваться ботом перейдите по телеграмм-ссылке:

https://t.me/test_assignment_bot

Тестовый пользователь:

Если вы не хотите регистрировать нового пользователя, то можно воспользоваться тестовым:

  • Username: admin
  • Password: admin