Найти - Пользователи
Полная версия: Бот вк работает некорректно.
Начало » Python для новичков » Бот вк работает некорректно.
1
Xonix9
Начал делать бота для вк. В итоге при отправке сообщения он мне отправляет только “Здравствуйте.”.
Подскажите, что не так
 import vk_api
from vk_api.longpoll import VkLongPoll, VkEventType
vk_session = vk_api.VkApi(token="API")
session_api = vk_session.get_api()
longpool = VkLongPoll(vk_session)
def ffmsg(id, some_text):
    vk_session.method("messages.send", {"user_id":id, "message":some_text,"random_id":0})
for event in longpool.listen():
    if event.type == VkEventType.MESSAGE_NEW:
        if event.to_me:
            msg = event.text.lower()
            id = event.user_id
            if msg == "hi" or "привет":
                ffmsg(id, "Здравствуйте.")
            elif msg == "команды" or "Команды":
                ffmsg(id, "Мои команды: Погода, Википедия")
            else:
                ffmsg(id, "Я не знаю такой команды.")
DamMercul
 if msg == "hi" or "привет"
это условие всегда правдиво, так как строка “привет” всегда истинна. Вот так сделай:
             if msg in ["hi", "привет"]:
                ffmsg(id, "Здравствуйте.")
            elif msg in ["команды", "Команды"]:
                ffmsg(id, "Мои команды: Погода, Википедия")
            else:
                ffmsg(id, "Я не знаю такой команды.")
и кста, ты msg в нижний регистр перевел, у тебя во втором условии проверяется еще капитализация, но смысла нет
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB