from threading import Thread from Config import Configuration import telebot import schedule from TgBotUI import Utils, CommonMessages from DataBase import Students, Schedule, UserStatus, HomeWork from TgBotUI import DataBaseExtension as dbExt from YandexInfoProvider import WeatherProvider, NewsProvider from datetime import datetime, timedelta token = Configuration.get_config_by_key('telegram-bot-key') bot = telebot.TeleBot(token) @bot.message_handler(commands=['start']) def start_button(message): message_text = 'Привет, укажи группу.\nПример команды:\n/setgroup Группа Фамилия Имя - указание своей группы' bot.send_message(message.chat.id, message_text, reply_markup=Utils.generate_menu()) @bot.message_handler(commands=['help']) def help_me(message): message_text = Utils.generate_help_message() bot.send_message(message.chat.id, message_text, reply_markup=Utils.generate_menu()) @bot.message_handler(commands=['setgroup'])
import requests import datetime from YandexInfoProvider import Utils from Config import Configuration from dateutil.parser import parse from bs4 import BeautifulSoup lat = 60.007624 lon = 30.373195 xYandexAPIKey = Configuration.get_config_by_key('yandex-api-key') def getYandexResponse(): global xYandexAPIKey global lat, lon response = requests.get( url=f'https://api.weather.yandex.ru/v2/forecast?lat={lat}&lon={lon}', headers={"X-Yandex-API-Key": xYandexAPIKey}) return response.json() def getWeatherForDate(date): basicWeatherInformation = {} response = getYandexResponse() neededDate = date if neededDate == datetime.date.today(): for key in response["fact"]: if key in ("temp", "feels_like", "wind_speed", "wind_gust"): basicWeatherInformation[key] = response["fact"][key]