Как отправить письмо (email) с помощью Python
Содержание
Отправка почты выполняется с помощью smtplib Python с использованием Простой сервер протокола передачи почты (SMTP). Модуль smtplib определяет объект сеанса клиента SMTP, который можно использовать для отправки почты на любой Интернет-компьютер с помощью SMTP или ESMTP-прослушивателя.
Объекты электронной почты и MIME
Многоцелевые расширения электронной почты Интернета (MIME) - это интернет-стандарт, который расширяется по ограниченным возможностям электронной почты и, в частности, позволяет вставлять в сообщение документы (такие как изображения, звук и текст).
Пример:
import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText fromaddr = "youraddress@gmail.com" toaddr = "some other email address" msg = MIMEMultipart() msg['From'] = fromaddr msg['To'] = toaddr msg['Subject'] = "Test Subject" body = "Write your message here" msg.attach(MIMEText(body, 'plain')) server = smtplib.SMTP('smtp.gmail.com:587') server.starttls() server.login(fromaddr, "your password") text = msg.as_string() server.sendmail(fromaddr, toaddr, text) server.quit()
SMTPAuthenticationError при отправке почты с использованием gmail
Иногда при отправке электронной почты с использованием адреса gmail вы можете увидеть следующее сообщение об ошибке:
raise SMTPAuthenticationError(code, resp) smtplib.SMTPAuthenticationError.....
Это связано с тем, что Google блокирует попытки входа из приложений, которые не используют современные стандарты безопасности (упомянутые на их странице поддержки). Однако вы можете включить / выключить эту функцию безопасности, перейдя по ссылке ниже:
Перейдите по этой ссылке и выберите «Включить»
https://www.google.com/settings/security/lesssecureapps
Кроме того, Google блокирует ip при попытке отправить электронное письмо с необычного местоположения, поэтому вы можете разблокировать следующую ссылку
https://support.google.com/accounts/answer/6009563
и нажал
accounts.google.com/DisplayUnlockCaptcha .
Настройки SMTP Gmail
Если вы используете Gmail для своей работы или учетной записи школы, обратитесь к администратору за правильной настройкой SMTP.