我有以下代码通过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()
答案 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'