Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 尝试使用Beaglebone Black发送电子邮件时接收getaddrinfo[Errno-2]_Python_Email_Smtp_Beagleboneblack_Errno - Fatal编程技术网

Python 尝试使用Beaglebone Black发送电子邮件时接收getaddrinfo[Errno-2]

Python 尝试使用Beaglebone Black发送电子邮件时接收getaddrinfo[Errno-2],python,email,smtp,beagleboneblack,errno,Python,Email,Smtp,Beagleboneblack,Errno,我试图使用Beaglebone Black(BBB)发送电子邮件通知,但我发现了getaddrinfo错误,如下所示: socket.gaierror:[Errno-2]名称或服务未知 我已经在这方面工作了一段时间,不知道为什么这不起作用 我正在尝试运行的nano文件: import smtplib #import time smtpObj = smtplib.SMTP('smtp.gmail.com', 587) #time.sleep(1000) print("SMTP object cre

我试图使用Beaglebone Black(BBB)发送电子邮件通知,但我发现了getaddrinfo错误,如下所示:

socket.gaierror:[Errno-2]名称或服务未知

我已经在这方面工作了一段时间,不知道为什么这不起作用

我正在尝试运行的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函数的输出如下:

root@beaglebone:~/Desktop/email_project# python test_email2.py
Traceback (most recent call last):
File "test_email2.py", line 4, in <module>
smtpObj = smtplib.SMTP('smtp.gmail.com', 587)
File "/usr/lib/python2.7/smtplib.py", line 249, in __init__
(code, msg) = self.connect(host, port)
File "/usr/lib/python2.7/smtplib.py", line 309, in connect
self.sock = self._get_socket(host, port, self.timeout)
File "/usr/lib/python2.7/smtplib.py", line 284, in _get_socket
return socket.create_connection((port, host), timeout)
File "/usr/lib/python2.7/socket.py", line 553, in create_connection
for res in getaddrinfo(host, port, 0, SOCK_STREAM):
socket.gaierror: [Errno -2] Name or service not known
root@beaglebone:~/Desktop/email_项目#python测试_email2.py
回溯(最近一次呼叫最后一次):
文件“test_email2.py”,第4行,在
smtpObj=smtplib.SMTP('SMTP.gmail.com',587)
文件“/usr/lib/python2.7/smtplib.py”,第249行,在__
(代码,消息)=自连接(主机,端口)
文件“/usr/lib/python2.7/smtplib.py”,第309行,在connect中
self.sock=self.\u获取\u套接字(主机、端口、self.timeout)
文件“/usr/lib/python2.7/smtplib.py”,第284行,在get套接字中
返回套接字。创建_连接((端口、主机),超时)
文件“/usr/lib/python2.7/socket.py”,第553行,在create_connection中
对于getaddrinfo(主机、端口、0、SOCK_流)中的res:
socket.gaierror:[Errno-2]名称或服务未知

我一直遵循的格式基于socket提供的格式。gaierror表示(在libc中的底层)
getaddrinfo
函数无法获取您提供的域名的IP地址。它解释了失败的原因:
[Errno-2]名称或服务未知
,因此它不知道具有此类名称的域名,
smtp.gmail.com
。此域名显然存在,因此您应该查看BBB系统中的DNS系统设置(这实际上更像是超级用户社区的问题)


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

谢谢r第一段,这实际上帮助我理解发生了什么。至于第二段,我希望我能提供这些信息,但我真的不知道这些项目的状态,也不知道如何检查它们。这可能需要我一段时间才能弄清楚。@EdSawden,请加入:我会尽力帮助你的。我真的希望我能ld聊天,但我需要14个以上的声誉才能使用聊天室(至少20个声誉;我现在6个).我现在已经有足够的声誉使用聊天室了。你还愿意讨论这个话题吗?我找不到任何解决方案,所以我目前正处于loss@EdSawden,当然可以,但我不能邀请您到聊天室。出于某种原因,聊天室说您仍然不允许在聊天室聊天,很抱歉。如果有什么,聊天室在这里: