我收到了以下错误:
警告:web2py:Mail.send失败:[Errno 11004] getaddrinfo失败
代码如下:
mail = Mail()
mail.settings.server = 'smtp.gmail.com:587'
mail.settings.sender = 'email@gmail.com'
mail.settings.login = 'email@gmail.com:password'
mail.send(to=[email],subject= 'TEST',message='helloWorld')
有人可以帮助我吗?我似乎无法找到有关getaddrinfo是什么以及错误发生在代码中的位置的任何文档。
谢谢!
答案 0 :(得分:0)
我使用smtplib来做它。
# here i check if i send succesfully.
server = smtplib.SMTP(HOST)
# server.login(username, password) # optional
try:
toaddr = TO
cc = [CC]
bcc = ['']
toaddrs = [toaddr] + cc + bcc
failed = server.sendmail(FROM, toaddrs, msg.as_string())
server.close()
statusemail= "Email enviado com sucesso para %s" % TO
print statusemail
return statusemail
except Exception, e:
errorMsg = "Unable to send email. Error: %s" % str(e)
return errorMsg
##############################################################
#example code to test smtplib
import smtplib
# Specifying the from and to addresses
fromaddr = 'fromuser@gmail.com'
toaddrs = 'touser@gmail.com'
# Writing the message (this message will appear in the email)
msg = 'Enter you message here'
# Gmail Login
username = 'username'
password = 'password'
# Sending the mail
server = smtplib.SMTP('smtp.gmail.com:587')
server.starttls()
server.login(username,password)
server.sendmail(fromaddr, toaddrs, msg)
server.quit()
来源:link
答案 1 :(得分:0)
这是您计算机网络设置的问题。 这不是您的代码的问题。
有关getaddrinfo
here
如果您使用的是类似Linux / unix的系统,则可以尝试nslookup smtp.gmail.com