我尝试使用Beaglebone Black(BBB)来发送电子邮件通知,但是我遇到了getaddrinfo错误,如下所示
socket.gaierror: [Errno -2] Name or service not known
我已经做了一段时间了,但不知道为什么这个不起作用。在
我尝试运行的nano文件:
import smtplib
#import time
smtpObj = smtplib.SMTP('smtp.gmail.com', 587)
#time.sleep(1000)
print("SMTP object created...")
smtpObj.ehlo()
#time.sleep(1000)
print("EHLO...")
smtpObj.starttls()
#time.sleep(1000)
print("Starting TLS...")
smtpObj.login('EXAMPLEACCOUNT@gmail.com', 'EXAMPLEPASSWORD')
#time.sleep(1000)
print("Logged into EXAMPLEACCOUNT@gmail.com...")
smtpObj.sendmail('EXAMPLEACCOUNT@gmail.com', 'EXAMPLERECIPIENT', '''Subject:test subject \ntest body
Auto Alert System.''')
{}
#time.sleep(1000)
print("Sending email...")
smtpObj.quit()
#time.sleep(1000)
print("Destorying object.")
调用test_email2.py函数的输出如下:
^{pr2}$我一直遵循的格式是基于https://automatetheboringstuff.com/chapter16/提供的格式
socket.gaierror
表示(libc中的底层)getaddrinfo
函数无法为您提供的域名获取IP地址。它解释了它失败的原因:[Errno -2] Name or service not known
,因此它不知道具有这样一个名称的域smtp.gmail.com
。很明显,你应该在这个域名系统中找到更多的域名。在配置中使用哪些DNS服务器?如果您在环回使用本地缓存DNS服务器,它是否已启动并运行?它是否正确配置为允许递归请求?这个特定的问题很可能与Python或您的代码无关;这是您的BBB系统无法解决至少部分(如果不是全部)域名。在
相关问题 更多 >
编程相关推荐