@brick__red

Ошибка в PyCharm, не запускает бота, что делать?

Вот код:
@bot.message_handler(commands=['start'])
def start_message(message):
    bot.send_message(message.chat.id, 'Привет, я бот', reply_markup=keyboard())

@bot.message_handler(content_types=['text'])
def send_text(message):
    if message.text.lower() == 'Купить':
        bot.send_message(message.chat.id, '''Товар 1
        Товар 2
        Товар 3''')
    elif message.text.lower() == 'Рулетка':
        bot.send_message(message.chat.id, 'Ты выиграл приз!')

def keyboard(): #клавиатура купить/рулетка
    markup = types.ReplyKeyboardMarkup(one_time_keyboard=True, resize_keyboard=True)
    btn1 = types.KeyboardButton('Рулетка')
    btn2 = types.KeyboardButton('Купить')
    markup.add(btn1, btn2)

bot.polling()

Во первых, pycharm выдает такую ошибку :
C:\Users\Administrator\AppData\Local\Programs\Python\Python37-32\python.exe: can't open file 'bot.py': [Errno 2] No such file or directory
Во вторых, бот не обрабатывает команды @bot.message_handler(content_types=['text']) когда запускаю через встроенный IDLE, что с этим делать?
  • Вопрос задан
  • 1652 просмотра
Пригласить эксперта
Ответы на вопрос 2
@bbkmzzzz
bot.message_handler(content_types=['text'])

если у вас файл скрипта имеет имя bot.py - переименуйте, не должно быть конфликта имен
Ответ написан
Комментировать
Dr_Elvis
@Dr_Elvis Куратор тега Python
В гугле забанен
Конечно он не будет отрабатывать. Вы берете текст сообщения, приводите к нижниму регистру а потом сравниваете с текстом с первой буквой в верхнем регистре.
А по по первому вопросу Вам написали выше
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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