@kou1lsdk

Ошибка в боте 'NoneType' object has no attribute 'lower'?

После сообщения рег в боте выводит ошибку в терминал
Traceback (most recent call last):
File "c:\Users\anton\Desktop\botvk\start.py", line 10, in
if event.obj.text.lower() == "рег":
^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'lower'

import vk_api
from plugins import system, function
from vk_api.bot_longpoll import VkBotEventType, VkBotLongPoll

vk, vk_session, longpoll = system.session()


for event in longpoll.listen():
    if event.type == VkBotEventType.MESSAGE_NEW:
        if event.obj.text.lower() == 'рег':
            text = function.register(event.obj.from_id)
            vk.message.send(peer_id=event.obj.peer_id,
                                message={text}, random_id=0)
  • Вопрос задан
  • 492 просмотра
Пригласить эксперта
Ответы на вопрос 2
Vindicar
@Vindicar
RTFM!
Очевидно, event.obj.text содержит значение None по какой-то причине. Проверяй значение, прежде чем пытаться вызывать его методы.
Ответ написан
@Nommero0123
Ну как-то так:
if event.obj.text is not None:
	if event.obj.text.lower() == 'рег':
		text = function.register(event.obj.from_id)
		vk.message.send(peer_id=event.obj.peer_id, message={text}, random_id=0)
else:
	print('NoneType object has no attribute lower!')


А вообще рекомендую ознакомиться с: https://pyneng.readthedocs.io/ru/latest/index.html
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы