语法错误:无效错误。电报机器人

时间:2018-06-08 17:08:07

标签: python telegram-bot

写电报机器人。这里代码:

import telebot
import time

token = 'my token'

bot = telebot.TeleBot(token)

def find_at(msg):
    for text in msg:
        if '@' in text:
            return text

@bot.message_handler(commands=['start'])
def handle_text(message):
    bot.send_message(message.chat.chat_id, "Welcome! Let start, use command /help to see my functional.")

@bot.message_handler(commands=['help'])
def handle_text(message):
    bot.send_message(message.chat_id, "To use this bot, send it a username.")

@bot.message_handler(func=lambda msg: msg.text is not None and '@' is in msg.text)
def at_answer(message):
    texts = message.text.split()
    at_text = find_at(texts)

    bot.reply_to(message, 'https://instagram.com/{}'.format(at_text[1:]))

当我开始main.py时,我收到错误:

  

@ bot.message_handler(func = lambda msg:msg.text不是None而且' @'在msg.text中)
  SyntaxError:语法无效

如何解决这个问题?求救!

1 个答案:

答案 0 :(得分:1)

从行is中删除@bot.message_handler(func=lambda msg: msg.text is not None and '@' is in msg.text)为:

@bot.message_handler(func=lambda msg: msg.text is not None and '@' in msg.text)

说明:

要检查文本中的字符是否只使用in