· 4 years ago · May 11, 2021, 01:22 PM
1import random, vk_api, vk
2from vk_api.keyboard import VkKeyboard, VkKeyboardColor
3from vk_api.utils import get_random_id
4import requests
5import sys
6import time
7import threading
8import json
9
10try:
11
12 #################################################################
13
14 def weather():
15 while True:
16 appid = "6285a7700b65ddc87cba9416c611b47b"
17 sys.stdout=open("weather.txt","w")
18 try:
19 res = requests.get("http://api.openweathermap.org/data/2.5/forecast",
20 params={'id': 480060, 'units': 'metric', 'lang': 'ru', 'APPID': appid})
21 data = res.json()
22 for i in data['list']:
23 print(i['dt_txt'], '{0:+3.0f}'.format(i['main']['temp']), i['weather'][0]['description'])
24 except Exception as e:
25 print("Exception (forecast):", e)
26 pass
27 sys.stdout.close()
28 time.sleep(600)
29
30 weather = threading.Thread(target=weather)
31 weather.start()
32
33 #################################################################
34
35 vk_session = vk_api.VkApi(token='f84b18662fc550192a53187958b3b9a1941cde41bc92c5293b8625425a4080375be1d29fbb1560678522d')
36 from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType
37 longpoll = VkBotLongPoll(vk_session, 204434733)
38 vk = vk_session.get_api()
39 from vk_api.longpoll import VkLongPoll, VkEventType
40 Lslongpoll = VkLongPoll(vk_session)
41 Lsvk = vk_session.get_api()
42
43
44
45 def bot():
46
47 Lsvk.messages.send(
48 user_id = 496658805,
49 message = "Бот запущен!",
50 random_id = get_random_id()
51 )
52
53 file = open("weather.txt", "r")
54 line1 = file.readline()
55 line2 = file.readline()
56 line3 = file.readline()
57 line4 = file.readline()
58
59 for event in longpoll.listen():
60 if event.type == VkBotEventType.MESSAGE_NEW:
61 if 'БОТ' in str(event) or 'Бот' in str(event) or 'бот' in str(event):
62 if event.from_chat:
63 if event.from_user
64 vk.messages.send(
65 key = ('b0409379fb3b81632ee943deb2e99280c53dd520'), #ВСТАВИТЬ ПАРАМЕТРЫ
66 server = ('https://lp.vk.com/wh204434733'),
67 ts=('1'),
68 random_id = get_random_id(),
69 message='Привет! Я бот DDRX5 теперь ты можешь вызывать меня по имени!',
70 chat_id = event.chat_id
71 )
72
73 if 'Погода?' in str(event) or 'погода?' in str(event) or 'Погода' in str(event) or 'Погода ?' in str(event):
74 if event.from_chat:
75 vk.messages.send(
76 key = ('b0409379fb3b81632ee943deb2e99280c53dd520'), #ВСТАВИТЬ ПАРАМЕТРЫ
77 server = ('https://lp.vk.com/wh204434733'),
78 ts=('1'),
79 random_id = get_random_id(),
80 message = line1 + line2 + line3 + line4,
81 chat_id = event.chat_id
82 )
83
84 if 'INFO' in str(event) or 'info' in str(event) or 'Info' in str(event):
85 if event.from_chat:
86 vk.messages.send(
87 key = ('b0409379fb3b81632ee943deb2e99280c53dd520'), #ВСТАВИТЬ ПАРАМЕТРЫ
88 server = ('https://lp.vk.com/wh204434733'),
89 ts=('1'),
90 random_id = get_random_id(),
91 message='Привет! Я бот DDRX5 созданный для того что-бы узнавать погоду прямо в беседе без перехода в стороние приложения. Бот написан на Python и открытом API home.openweathermap.org',
92 chat_id = event.chat_id
93 )
94
95 if 'OWNCRT' in str(event):
96 if event.from_chat:
97 vk.messages.send(
98 key = ('b0409379fb3b81632ee943deb2e99280c53dd520'), #ВСТАВИТЬ ПАРАМЕТРЫ
99 server = ('https://lp.vk.com/wh204434733'),
100 ts=('1'),
101 random_id = get_random_id(),
102 message='Матвей Зеленин',
103 chat_id = event.chat_id
104 )
105
106 if 'шутка' in str(event) or 'Шутка' in str(event) or 'Анекдот' in str(event) or 'анекдот' in str(event):
107 if event.from_chat:
108 urljoke = requests.get('https://evilinsult.com/generate_insult.php?lang=ru&type=json')
109 datajoke = urljoke.json()
110 EnterJoke = datajoke['insult']
111 vk.messages.send(
112 key = ('b0409379fb3b81632ee943deb2e99280c53dd520'), #ВСТАВИТЬ ПАРАМЕТРЫ
113 server = ('https://lp.vk.com/wh204434733'),
114 ts=('1'),
115 random_id = get_random_id(),
116 message = EnterJoke,
117 chat_id = event.chat_id
118 )
119
120 if 'Блин' in str(event):
121 if event.from_chat:
122 vk.messages.send(
123 key = ('b0409379fb3b81632ee943deb2e99280c53dd520'), #ВСТАВИТЬ ПАРАМЕТРЫ
124 server = ('https://lp.vk.com/wh204434733'),
125 ts=('1'),
126 random_id = get_random_id(),
127 message='Ну хоть не оладьи',
128 chat_id = event.chat_id
129 )
130
131 bot = threading.Thread(target=bot)
132 bot.start()
133
134 #################################################################
135
136except:
137 Lsvk.messages.send(
138 user_id=496658805,
139 message="Бот выключен :( ",
140 random_id=get_random_id()
141 )