错误:TeleBot:“发生TypeError,args =(”'在<string>'中需要字符串作为左操作数,而不是NoneType“,)

时间:2019-08-14 05:45:29

标签: python telegram telegram-bot

我为pyTelegramBotApi键入了一个侦听器,并且该侦听器一直工作到我向它抛出不是命令的东西并且它运行此错误2019-08-13 22:35:40,074(util.py:65 PollingThread)

ERROR - TeleBot: "TypeError occurred, args=("'in <string>' requires string as left operand, not NoneType",)

    for m in messages:
        if m.content_type == 'text':
            # print the sent message to the console
            print(str(m.chat.first_name) + " [" + str(m.chat.id) + "]: " + m.text)

预期的输出,消息显示在控制台中 结果:错误

1 个答案:

答案 0 :(得分:0)

这已经有一段时间了,但是只是遇到了同样的错误并发现,原因是我之前提供的消息处理程序。我没有提供列表中要处理的(单个)命令。因此,不要键入(正确的方法):

@bot.message_handler(commands=['help'])

我使用了(错误方式):

@bot.message_handler(commands='help')

尽管这适用于已知(即提供)的命令,但对于未知命令和纯文本消息,这也导致了相同的错误。希望对您有所帮助(不知道,因为您没有在代码中提供更多信息)。