0

Подскажите пожалуйста, есть бот, который отправляет сообщения из Telegram на почту. Сообщения приходят, но не получается заставить принимать файлы(нужно отправлять фото, документы, возможно видео). Помогите пожалуйста, что нужно дописать, чтобы бот работал с файлами?

import telebot
import datetime
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText

TOKEN

TOKEN = '' bot = telebot.TeleBot(TOKEN)

@bot.message_handler(commands=['start']) def process_start(message): keyboard = telebot.types.ReplyKeyboardMarkup(resize_keyboard=True, one_time_keyboard=True) msg = bot.send_message(message.chat.id, text='Welcome!', reply_markup=keyboard)

@bot.message_handler(content_types=['text']) def send_email(message): try: username = "{0.username}".format(message.from_user, bot.get_me()) fromaddr = "mail@gmail.com" mypass = "password" toaddr = "mail@mail.com" msg = MIMEMultipart() msg['From'] = fromaddr msg['To'] = toaddr msg['Subject'] = "Отправитель: Telegram bot" # + str(message.chat.id) body = "Message: Telegram_bot \n\n" + message.text msg.attach(MIMEText(body, 'plain')) server = smtplib.SMTP('smtp.gmail.com', 587) server.starttls() server.login(fromaddr, mypass) text = msg.as_string() server.sendmail(fromaddr, toaddr, text) server.quit() bot.reply_to(message, "Message send") except Exception: bot.reply_to(message, "ERROR")

aasdt
  • 1
  • 3
  • https://ru.stackoverflow.com/questions/1232017/%d0%9c%d0%be%d0%b6%d0%bd%d0%be-%d0%bb%d0%b8-%d0%ba%d0%b0%d0%ba-%d1%82%d0%be-%d0%be%d0%b6%d0%b8%d0%b4%d0%b0%d1%82%d1%8c-%d0%bf%d0%be%d0%ba%d0%b0-%d0%bf%d0%be%d0%bb%d1%8c%d0%b7%d0%be%d0%b2%d0%b0%d1%82%d0%b5%d0%bb%d1%8c-%d0%bd%d0%b5-%d0%be%d1%82%d0%bf%d1%80%d0%b0%d0%b2%d0%b8%d1%82-%d1%84%d0%be%d1%82%d0%be – Недокодер Apr 08 '21 at 18:15
  • Этот вопрос может помочь решить вашу проблему. Но там только про фото. Но как отправлять я не знаю. Там написано только как скачивать боту фотки – Недокодер Apr 08 '21 at 18:16
  • Спасибо за ответ, но это немного не то. Если я правильно понимаю, мне нужно указать тип файлов, которые бот ожидает, например: @bot.message_handler(content_types=['text', 'photo', 'document', 'audio', 'video']), а дальше бот должен отправлять или текстовое сообщение или фото/документ – aasdt Apr 08 '21 at 18:33
  • https://ru.stackoverflow.com/a/615794/234134 для сохранения, а после msg.attach – kubada Apr 15 '21 at 18:33
  • У меня точно такая же проблема а вы уже нашли способ? – krutoi_0 Apr 09 '23 at 07:44

0 Answers0