Как достать текст из файла .txt присланного пользователем боту Telegram? (библиотека telebot)
Пользователь присылает файл .txt. Нужно достать оттуда текст и сохранить в строку, предварительно проверив что файл формата .txt
Я написал хендлер для получения файла, но никак не могу достать оттуда текст и не знаю как сделать проверку на тип файла.
Библиотека telebot
@bot.message_handler(content_types=['document'])
def get_new_credentials(message):
file_info = bot.get_file(message.document.file_id)
Ответы (1 шт):
Автор решения: Dr Proger
→ Ссылка
Сохраняем присланный от пользователя файл:
@bot.message_handler(content_types=['document'])
def handle_file(message):
try:
chat_id = message.chat.id
file_info = bot.get_file(message.document.file_id)
downloaded_file = bot.download_file(file_info.file_path)
src = 'C:/Python/Project/bot/files/received/' + message.document.file_name;
with open(src, 'wb') as new_file:
new_file.write(downloaded_file)
except Exception as e:
bot.reply_to(message, e)
log(message)
Для проверки расширения файла:
if 'txt' == message.document.file_name.split('.')[1]:
return True