我使用什么作为SMTP

时间:2015-06-24 04:44:52

标签: php python email smtp backend

我正在尝试编写一个Python脚本来发送来自我服务器的电子邮件,现在从我的研究开始,我看到的第一件事是我必须设置server = smtplib.SMTP('server?', 25)并且server?我不知道该放什么我看过smtp.gmail.com而且我看过localhost,理想情况下,我希望从我的Gmail帐户发送电子邮件,所以我想我想smtp.gmail.com但是当我有这个时我收到此错误

Traceback (most recent call last):
 File "/home/jam/public_html/cgi-bin/email.py", line 6, in <module>
   server = smtplib.SMTP('smtp.gmail.com', 25)
 File "/usr/lib64/python2.6/smtplib.py", line 239, in __init__
   (code, msg) = self.connect(host, port)
 File "/usr/lib64/python2.6/smtplib.py", line 295, in connect
   self.sock = self._get_socket(host, port, self.timeout)
 File "/usr/lib64/python2.6/smtplib.py", line 273, in _get_socket
   return socket.create_connection((port, host), timeout)
 File "/usr/lib64/python2.6/socket.py", line 567, in create_connection
   raise error, msg
socket.error: [Errno 101] Network is unreachable

那应该去那里?

感谢您的帮助:)

3 个答案:

答案 0 :(得分:0)

<强> ISSUE:

首先,您使用gmail服务器发送邮件。对于gmail服务器,输出端口为587

答案 1 :(得分:0)

要从您的Gmail帐户发送电子邮件,您可以按照此Google管理员帮助页面使用Gmail的SMTP服务器:Google Apps SMTP settings to send mail from a printer, scanner, or app

通过smtp.gmail.com为SMTP提供了以下配置要求。

  • 端口465(需要SSL)
  • 港口587(需要TLS)
  • 允许动态IP

答案 2 :(得分:-2)

在python中,请下载yagmail(免责声明:我是开发人员):

pip install yagmail

这只是一个问题:

import yagmail
yag = yagmail.SMTP('me@gmail.com', 'mypassword')
yag.send('to@gmail.com', 'This is the subject', 'This is the body')

在github上,您还可以看到errors的常用列表。