#python #telegram #py-telegram-bot-api
#python #telegram #py-telegram-bot-api
Вопрос:
Я использую библиотеку pytelegrambotapi, чтобы создать своего бота в telegram.
Вот мой код:
import config
import telebot
bot = telebot.TeleBot(config.token)
@bot.message_handler(commands=['start'])
def handle_start_message(message):
bot.send_message(message.chat.id, "Hello. I'm your bot")
print(message.text)
Что я хочу сделать, так это вернуть текст сообщения в мою командную строку. Он ничего не возвращает, однако бот работает, поскольку он отвечает мне в telegram.
Комментарии:
1. Вы пробовали
logging
модуль python?
Ответ №1:
Скорее всего, код выполняется в отдельном потоке / процессе, который не имеет доступа к консоли и, следовательно, не может что-то напечатать в нем.
Используйте ведение журнала в файл вместо печати.
Вот полезная ссылка — https://github.com/python-telegram-bot/python-telegram-bot#logging
Комментарии:
1. спасибо, но на самом деле я использовал print только для указания того факта, что сообщения, полученные ботом, могут влиять, например, на некоторые локальные переменные. Например: если message.text == «привет»: local_var = 1
Ответ №2:
Это работает, но оно просто выдает все содержимое.
@bot.message_handler(func=lambda message: True)
def echo_message(message):
print(message)
bot.reply_to(message, message.text)
Я пытаюсь найти лучшую альтернативу, надеюсь, я сделаю этот процесс простым.
##updated
print(message.text)
Я протестировал его.