Skip to content

ergon73/telegram-weather-bot-aiogram

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Telegram Weather Bot (aiogram)

Telegram-бот для получения прогноза погоды, разработанный на Python с использованием асинхронной библиотеки aiogram 3.x и OpenWeatherMap API. Учебный проект курса «Программист на Python».

Возможности

  • /start — приветственное сообщение и краткая инструкция
  • /help — список доступных команд
  • /weather — текущий прогноз погоды в Москве (температура, описание, влажность, ветер)

Технологии

  • Python 3.10+
  • aiogram 3.x — асинхронная библиотека для Telegram Bot API
  • OpenWeatherMap API — данные о погоде
  • python-dotenv — управление переменными окружения

Установка и запуск

1. Клонируйте репозиторий

git clone https://github.com/ergon73/telegram-weather-bot-aiogram.git
cd telegram-weather-bot-aiogram

2. Установите зависимости

pip install -r requirements.txt

3. Настройте переменные окружения

Скопируйте .env.example в .env и заполните значения:

# Linux / macOS
cp .env.example .env

# Windows (PowerShell или cmd)
copy .env.example .env
TOKEN=ваш_токен_от_BotFather
API_KEY=ваш_ключ_от_OpenWeatherMap

4. Запустите бота

python main.py

Настройка BotFather

  1. Найдите @BotFather в Telegram (официальный бот с синей галочкой).
  2. Отправьте /newbot и следуйте инструкциям для создания бота.
  3. Скопируйте полученный токен в файл .env.
  4. Оформите бота: /setdescription, /setabouttext, /setuserpic.
  5. Зарегистрируйте команды через /setcommands:
start - Запустить бота
help - Список команд
weather - Прогноз погоды

Получение API-ключа OpenWeatherMap

  1. Зарегистрируйтесь на openweathermap.org.
  2. Перейдите в раздел API Keys.
  3. Скопируйте ключ в файл .env.

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

telegram-weather-bot-aiogram/
├── .env              # Переменные окружения (не в git)
├── .env.example      # Шаблон переменных окружения
├── .gitignore        # Исключения для git
├── config.py         # Загрузка конфигурации из .env
├── main.py           # Основной код бота
├── requirements.txt  # Зависимости Python
└── README.md         # Документация проекта

Автор

Георгий Белянин (Georgy Belyanin)
georgy.belyanin@gmail.com

About

Telegram bot for weather forecasts using aiogram 3.x and OpenWeatherMap API. Educational project demonstrating async Python bot development.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages