pythonbot/start.py

35 lines
1.3 KiB
Python
Raw Normal View History

2020-04-04 16:07:39 +00:00
import vk_api
import time
import requests
2020-04-04 21:18:12 +00:00
import logging
2020-04-04 16:07:39 +00:00
from config import vk
from bs4 import BeautifulSoup
2020-04-03 21:18:34 +00:00
from dan63047bot import VkBot
2020-04-04 16:07:39 +00:00
from vk_api.longpoll import VkLongPoll, VkEventType
2020-04-03 21:18:34 +00:00
2020-04-04 21:18:12 +00:00
root_logger= logging.getLogger()
root_logger.setLevel(logging.INFO)
handler = logging.FileHandler('bot.log', 'w', 'utf-8')
handler.setFormatter(logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s'))
root_logger.addHandler(handler)
2020-04-03 21:18:34 +00:00
2020-04-04 16:07:39 +00:00
def write_msg(peer_id, message, attachment=None):
vk.method('messages.send', {'peer_id': peer_id,
'message': message,
'random_id': time.time(),
'attachment': attachment})
longpoll = VkLongPoll(vk) # Работа с сообщениями
2020-04-04 21:18:12 +00:00
logging.info("Бот начал работу")
2020-04-03 21:18:34 +00:00
for event in longpoll.listen():
if event.type == VkEventType.MESSAGE_NEW:
if event.to_me:
2020-04-04 16:07:39 +00:00
2020-04-04 21:18:12 +00:00
logging.info(f'Получено сообщение от id{event.peer_id}: {event.text}')
2020-04-04 16:07:39 +00:00
2020-04-03 21:18:34 +00:00
bot = VkBot(event.peer_id)
2020-04-04 21:18:12 +00:00
bot_answer = bot.new_message(event.text)
2020-04-05 14:41:33 +00:00
if bot_answer['text'] or bot_answer['attachment']:
2020-04-04 21:18:12 +00:00
write_msg(event.peer_id, bot_answer['text'], bot_answer['attachment'])
logging.info(f'Ответ бота: {bot_answer}')