我的 Python 代码有什么问题,我该如何解决?
What is wrong with my Python code and how can I fix it?
这是我的代码
import requests
ping = requests.get('http://example.com')
ping.status_code
if ping.status_code==200:
print ("Online")
else:
print ("Offline")
它 ping http://example.com
。当网站在线时,它成功打印 Online
。当网站离线时,我希望它打印 Offline
但它却显示一条巨大的错误消息,以这一行结尾
Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fd3f17372e8>: Failed to establish a new connection: [Errno -2] Name or service not known',))
如果网站离线,如何修复它才能成功打印Offline
?
您收到请求本身的错误。
ping = requests.get('http://example.com')
因此,如果服务器没有响应您,您将不会获得状态代码。
如果你想检查主机是否宕机,使用异常处理是值得的,这样当请求失败时,你的脚本不会因错误而宕机。以下代码应该可以工作。
import requests
try:
ping = requests.get('http://example.com')
print ("Online")
except:
print ("Offline")
您可以通过如下修改代码来做到这一点:
添加try
和except
机制。
import requests
try:
ping = requests.get('http://example.com')
ping.status_code
if ping.status_code==200:
print ("Online")
else:
print ("Offline")
except requests.exceptions.ConnectionError as e:
print("Offline")
这是我的代码
import requests
ping = requests.get('http://example.com')
ping.status_code
if ping.status_code==200:
print ("Online")
else:
print ("Offline")
它 ping http://example.com
。当网站在线时,它成功打印 Online
。当网站离线时,我希望它打印 Offline
但它却显示一条巨大的错误消息,以这一行结尾
Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fd3f17372e8>: Failed to establish a new connection: [Errno -2] Name or service not known',))
如果网站离线,如何修复它才能成功打印Offline
?
您收到请求本身的错误。
ping = requests.get('http://example.com')
因此,如果服务器没有响应您,您将不会获得状态代码。 如果你想检查主机是否宕机,使用异常处理是值得的,这样当请求失败时,你的脚本不会因错误而宕机。以下代码应该可以工作。
import requests
try:
ping = requests.get('http://example.com')
print ("Online")
except:
print ("Offline")
您可以通过如下修改代码来做到这一点:
添加try
和except
机制。
import requests
try:
ping = requests.get('http://example.com')
ping.status_code
if ping.status_code==200:
print ("Online")
else:
print ("Offline")
except requests.exceptions.ConnectionError as e:
print("Offline")