使用python发送电子邮件

时间:2018-11-07 02:04:21

标签: python

我想使用python从我的Gmail帐户发送电子邮件。我遵循了这个stackoverflow帖子中给出的步骤:enter image description here

但是,我发送的邮件没有到达地址。

这是我得到的错误:

Traceback (most recent call last):
  File "something.py", line 24, in <module>
    server = smtplib.SMTP('myserver')
  File "/anaconda2/lib/python2.7/smtplib.py", line 256, in __init__
    (code, msg) = self.connect(host, port)
  File "/anaconda2/lib/python2.7/smtplib.py", line 317, in connect
    self.sock = self._get_socket(host, port, self.timeout)
  File "/anaconda2/lib/python2.7/smtplib.py", line 292, in _get_socket
    return socket.create_connection((host, port), timeout)
  File "/anaconda2/lib/python2.7/socket.py", line 557, in create_connection
    for res in getaddrinfo(host, port, 0, SOCK_STREAM):
socket.gaierror: [Errno 8] nodename nor servname provided, or not known

我在这里应该做什么?

2 个答案:

答案 0 :(得分:3)

您得到的是一个DNS查询错误,指示域myserver不存在。

您必须将myserver中的参数server = smtplib.SMTP('myserver')替换为SMTP服务器的实际地址,例如smtp.mail.yahoo.com

答案 1 :(得分:0)

这就是我的方法。

import smtplib
server=smtplib.SMTP('smtp.gmail.com',587)
server.starttls()
server.login('your_email@gmail.com','your_password')
server.sendmail('your_email@gmail.com','your_email@gmail.com','test email')