Forezz

Weather bot

Oct 5th, 2021
1,016
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.91 KB | None | 0 0
  1. import vk_api
  2. from vk_api.longpoll import VkLongPoll, VkEventType
  3. import random
  4. import requests
  5.  
  6. vkAPI = vk_api.VkApi(token='')
  7. vk_session = vkAPI.get_api()
  8. longpoll =  VkLongPoll(vkAPI)
  9.  
  10. weather_token=''
  11.  
  12. while True:
  13.     events = longpoll.check()
  14.     # print(events)
  15.     for event in events:
  16.         if event.type == VkEventType.MESSAGE_NEW and event.to_me and event.text:
  17.             if event.text == 'Начать':
  18.                 vk_session.messages.send(user_id=event.user_id,
  19.                                          message='Здравствуй, друг! Напиши название в города, в котором хочешь узнать погоду',
  20.                                          random_id=random.randint(0, 1000))
  21.  
  22.             else:
  23.                 result = requests.get('http://api.openweathermap.org/data/2.5/weather',
  24.                                       params={'q': event.text,
  25.                                               'appid': weather_token,
  26.                                               'units': 'metric',
  27.                                               'lang':'ru'})
  28.                 print(result.json())
  29.                 message = ''
  30.  
  31.                 message += 'Текущая температура - ' + str(result.json()['main']['temp']) + '\n'
  32.                 message += 'Ощущается как ' + str(result.json()['main']['feels_like']) + '\n'
  33.                 message += 'Минимальная температура - ' + str(result.json()['main']['temp_min']) + '\n'
  34.                 message += 'Максимальная температура - ' + str(result.json()['main']['temp_max']) + '\n'
  35.  
  36.  
  37.  
  38.                 vk_session.messages.send(user_id=event.user_id,
  39.                                          message='Температура в городе ' + event.text + '\n' + message,
  40.                                          random_id=random.randint(0, 1000))
  41.  
Advertisement
Add Comment
Please, Sign In to add comment