2013-02-15 199 views
3

我对python的模块smtplib有问题:在工作中,pc通过代理连接。当我运行代码:如何通过代理发送电子邮件与smtplib模块?

server = smtplib.SMTP() 
server.connect('smtp.gmail.com:587') 
server.login('username','password') 
server.sendmail('from', 'to', 'msg') 
server.quit() 

出现此错误消息:

File "C:\Python32\lib\socket.py", line 386, in create_connection for res in getaddrinfo(host, port, 0, SOCK_STREAM): socket.gaierror: [Errno 11001] getaddrinfo failed

我认为这是由代理造成的,即阻止连接。 电脑可以在网上冲浪。 如何通过代理发送电子邮件? ps :(我是意大利人,对不起我的“italish”)

回答

0

问题是您的DNS解析不起作用。这就是错误告诉你的。

0

下面的工作:

server = smtplib.SMTP_SSL('smtp.gmail.com',port=465) 
server.login('[email protected]','password') 
server.sendmail('from', 'to', 'msg') 
+0

587是TLS和465是SSL – Neil 2013-02-15 15:42:40