У меня уже есть код для отправки электронной почты с python:
def send_email_gmail(subject, message, destination):
""" Send an e-mail using gmail with message to destination email.
Arguments:
message {str} -- message string to send.
destination {str} -- destination email (as string)
"""
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
# not a real email account nor password, its all ok!
server.login('me123@gmail.com', 'fakepassword111!!!')
# craft message
msg = EmailMessage()
message = f'{message}\n'
msg.set_content(message)
msg['Subject'] = subject
msg['From'] = 'me123@gmail.com'
msg['To'] = destination
# send msg
server.send_message(msg)
, и я прочитал несколько вопросов ( Учетные данные для входа не работают с Gmail SMTP или SMTPAuthenticationError при отправке почты с использованием gmail и python) для решения распространенной ошибки:
smtplib.SMTPAuthenticationError: (534, b'5.7.14 <https://accounts.google.com/signin/continue?sadfdgjsfgrp=1&dsfgscc=1dsdfgsfg&pldsfgt=AKsdfsdfggsdfggnsbu\n5.7.14 G0crCr0qSvWTng9xRE_pd3WnK3S2sDMsdfgsdfgX0J-xoetn7aHyFQi2qYrQisdfgsdfgKIwMCcgD7zLB1t7Z\n5.7.14 -OjHjpJqasdftBuTi9wh0sYlNW637SmPLuMnnLGn_WcZX5TGH4sddsfgXYar-Aasdfw0ctWfLhasdffPQV>\n5.7.14 Please log in via your web browser and then try again.\n5.7.14 Learn more at\n5.7.14 https://support.google.com/mail/answer/787521345364524 n21sm17577sadfdsf46qtn.17 - gsmtp')
В любом случае, я сделал то, что предлагают эти ответы, но я все еще получаю ошибку. Поэтому я решил Я больше не хочу использовать gmail для этого . Я отправляю электронную почту с поддельной учетной записи только для отправки электронных писем, поэтому для меня это не имеет значения для безопасности.
Итак, как изменить приведенный выше код, чтобы он работал для другой более надежной службы электронной почты? для отправки писем в python / code?
Идея ответа будет содержаться автономно и содержать пример сценария, который работает.
Edit1:
Имею конечно, включите менее безопасную функцию приложения в моем поддельном Gmail, скопируйте и вставьте текст того, что написано на этой странице:
Turn off less secure app access
Your account is vulnerable to malicious activity because you’re allowing apps & devices that use less secure sign-in technology to access your account. You should turn off this type of access. Google will automatically turn this setting OFF if it’s not being used. Learn more
также есть желтый восклицательный знак, предупреждающий меня.
Edit2
Вывод EmailMessage()
:
это как предложено, я вставляю это (пустое сообщение).