使用BeagleBone Black发送电子邮件时收到getaddrinfo [Errno -2]的错误

2024-04-19 12:37:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试使用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/提供的格式


Tags: testimportcomobjecttime格式sleepsmtp
1条回答
网友
1楼 · 发布于 2024-04-19 12:37:00

socket.gaierror表示(libc中的底层)getaddrinfo函数无法为您提供的域名获取IP地址。它解释了它失败的原因:[Errno -2] Name or service not known,因此它不知道具有这样一个名称的域smtp.gmail.com。很明显,你应该在这个域名系统中找到更多的域名。在

配置中使用哪些DNS服务器?如果您在环回使用本地缓存DNS服务器,它是否已启动并运行?它是否正确配置为允许递归请求?这个特定的问题很可能与Python或您的代码无关;这是您的BBB系统无法解决至少部分(如果不是全部)域名。在

相关问题 更多 >