我有一个python程序,可以启动一个线程。你知道吗
此线程,每秒向同一网络上的服务器发出一个rest请求。你知道吗
有时此服务器已关闭。 如果rest请求失败,线程结束,主程序启动一个新线程。你知道吗
每个rest请求都使用以下代码片段完成:
import requests
def getxml(link):
r = requests.get(link, allow_redirects=True)
if (r.status_code == 200):
xml = r.text
else:
xml = ""
return xml
xml = getxml('192.168.1.201:5000/OKUMA.Lathe/probe')
有时此代码会生成异常:
Exception: HTTPConnectionPool(host='192.168.1.201', port=5000):
Max retries exceeded with url: /OKUMA.Lathe/probe
(Caused by NewConnectionError('<urllib3.connection.HTTPConnection object
at 0x75d241b0>: Failed to establish a new connection: [Errno 113]
No route to host'))
当服务器关闭时,这可能是正常的。但当服务器打开时也会发生这种情况。 奇怪的是:
如果我ping服务器,我会得到pong。
如果我把浏览器放到链接上,我就得到了数据。
如果我重新启动python程序,一切正常。
我也尝试过使用urllib,但是我得到了相同的错误。
为什么我会出现无路由到主机的错误??你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐