0
0 комментариев

Версия 3.7
Windows

Сообщений об ошибке нет. Просто не работает. Понимаю, что какой-то бред написал, но жду помощь)

import vk_api
import time
import random
import webbrowser
import pyowm
 token = "fa9f7d86eb3e3240d83eb5ae8f564958ba236b00e6633af871c71bad06359ad147d5ba56cb739b48b33e7"
 vk = vk_api.VkApi(token=token)
 vk._auth_token()
 def dictionary(bady):
 bady = body
 diction = {id : body}
 vk.method("messages.send", {"peer_id": id, "message": "Я запомнил", "random_id": random.randint(1, 2147483647)})
 if body.lower() == 'что я забыл?':
  vk.method("messages.send", {"peer_id": id, "message": "вы забыли " + (diction[id]) , "random_id": random.randint(1, 2147483647)})
  def weather(question):
 owm = pyowm.OWM('6c3a20c2b736cf4f8a99b71bb1854113', language = "ru")
 place  = question
 try:
  observation = owm.weather_at_place(place)
 except Exception as E:
  print('Город ' + place + 'не найден')
  return 'Введен некорректный город'
 else:
  print('Запрос выполнен')
  w = observation.get_weather()
  temp = w.get_temperature('celsius')['temp']
  tempmax = w.get_temperature('celsius')['temp_max']
  tempmin = w.get_temperature('celsius')['temp_min']
  answer = f'В городе {place} сейчас {w.get_detailed_status()} 😎\n'
  answer += f'Темпуратура сейчас в районе {str(temp)} 🗣\n'
  answer += f'Максимальной температурй сегодняшнего дня считается {str(tempmax)} 🚽\n'
  answer += f'Минимальной температурой сегодняшнего дня являяется {str(tempmin)}🇷🇺\n'
  veter = w.get_wind()['speed']
  answer += f'В городе {str(place)} скорость ветра примерно равна {str(veter)} м/c\n\n'
  if temp < 15:
   answer += 'На улице холодно, но можно идти голым'
  else:
   answer += 'На улице тепло, иди гуляй'
  return answer
 while True:
 try:
  messages = vk.method("messages.getConversations", {"offset": 0, "count": 20, "filter": "unanswered"})
  if messages["count"] >= 1:
   id = messages["items"][0]["last_message"]["from_id"]
   body = messages["items"][0]["last_message"]["text"]
   print(f'{id}: {body}')
   if body.lower() == "привет":
    vk.method("messages.send", {"peer_id": id, "message": "Привет! Я пока годен только для того, чтобы узнавать погоду. Хочешь узнать - пиши: 'Погода *город'* " , "random_id": random.randint(1, 2147483647)})
   elif body.lower() == "как дела?":
    vk.method("messages.send", {"peer_id": id, "message": "Пока не родила. А у тебя мальчик или девочка?", "random_id": random.randint(1, 2147483647)})
   elif body.lower() == "девочка":
    vk.method("messages.send", {"peer_id": id, "message": "потому что ты сам девочка!1!11!1!!11!", "random_id": random.randint(1, 2147483647)})
   elif body.lower() == "мальчик":
    vk.method("messages.send", {"peer_id": id, "message": "потому что ты мальчик", "random_id": random.randint(1, 2147483647)})
   elif body.lower().split()[0] == "погода" and len(body.lower().split()) > 1:
    print(f'	Пошел запрос погоды на город {body.lower().split()[1]}')
    vk.method("messages.send", {"peer_id": id, "message": weather(body.lower().split()[1]), "random_id": random.randint(1, 2147483647)})
   elif body.lower().split()[0] == 'запомнить' and len(body.lower().split()) > 1:
    vk.method("messages.send", {"peer_id": id, "message": dictionary(body.lower().split()[1]), "random_id": random.randint(1,2147483647)})
   else:
    vk.method("messages.send", {"peer_id": id, "message": "Я не понял", "random_id": random.randint(1, 2147483647)})
 except Exception as E:
  time.sleep(0)

Asked question
Добавить комментарий