从smtplib

时间:2016-07-02 17:51:19

标签: python email gmail smtplib

我有以下代码通过python将邮件发送到电子邮件地址。 当我将工作电子邮件地址放在'toaddrs'变量中时,它无法正常工作。 它没有出错,但我没有收到任何邮件。但是我可以通过浏览器从gmail发送邮件到同一个地址。 任何人都可以帮我弄清楚它为什么不起作用吗?

import smtplib


fromaddr = 'my_address@gmail.com'
toaddrs = 'my_work_address@workdomain.com'
msg = 'Hello!'

username = 'my_address@gmail.com'
password = 'mypassword'

server = smtplib.SMTP('smtp.gmail.com:25')
server.starttls()
server.login(username,password)
server.sendmail(fromaddr,toaddrs,msg)
server.quit()

1 个答案:

答案 0 :(得分:0)

检查您是否可以在将电子邮件发送到自己的Gmail地址时发送和检索电子邮件,即toaddrs = fromaddr

您的工作服务器可能会拒绝您的电子邮件,因为标题丢失,请查看https://docs.python.org/3.5/library/email-examples.html

尝试将msg更改为:

msg = ("From: %s\r\nTo: %s\r\nSubject: StackOverflow\r\n"
       % (fromaddr, toaddrs))
msg += 'Hello\n'