就像许多使用Office365的大公司一样,我的公司也使用谷歌(gsuite)托管其电子邮件域。我需要使用python脚本向组织内的多个人发送自动电子邮件。怎么办?
答案 0 :(得分:1)
您可以使用Mailgun之类的第三方服务,该服务提供了REST API,如果您点击该服务,则可以触发电子邮件,该电子邮件将从您在该服务上配置的自定义域发送。
它对于python超级好用,我在Raspberry Pi项目中使用。
def send_simple_message():
return requests.post(
"https://api.mailgun.net/v3/YOUR_DOMAIN_NAME/messages",
auth=("api", "YOUR_API_KEY"),
data={"from": "Excited User <mailgun@YOUR_DOMAIN_NAME>",
"to": ["bar@example.com", "YOU@YOUR_DOMAIN_NAME"],
"subject": "Hello",
"text": "Testing some Mailgun awesomness!"})
它是使用公司SMTP服务器的不错选择。
答案 1 :(得分:0)
将其修复。
要从Python发送电子邮件,我们首先需要打开“缺少安全的应用程序访问权限” https://myaccount.google.com/lesssecureapps?utm_source=google-account&utm_medium=web。
如果我们没有2因子身份验证,我们需要这样做。
如果您使用2因子身份验证,则需要创建应用密码并在发送电子邮件时使用该特定密码,而不是常规密码。
要创建应用密码,请使用以下链接:https://support.google.com/mail/answer/185833?hl=en
现在使用下面的示例脚本,我们可以发送电子邮件。
import smtplib
# creates SMTP session
s = smtplib.SMTP('smtp.gmail.com', 587)
# start TLS for security
s.starttls()
# Authentication
s.login("username@domain.com", "app_password")
# message to be sent
message = "Message_you_need_to_send"
# sending the mail
s.sendmail("username@domain.com", "recipient@domain.com", message)
# terminating the session
s.quit()
答案 2 :(得分:0)
Google提供了适用于python的Gmail api套件,相对于smtp登录/密码,它是首选的访问方式
有关示例和教程,请参考他们的developer console