前几天,写个一个ping测试。然后今天配数据库的时候发现:ping不通。
我自己开放了ORACLE的1521端口,但是别的端口都没放开。ping的时候没反应。
开放所有端口(我数据库装在虚拟机里,开放也OK),ping通了。
上网查:默认ping 的是80和21.
懂了。
以后用telnet。
然后就是之前说的:用system模块和popen模块测试命令。但是稳定性非常差。
system乱码,popen打包以后不执行。
我想了想,上网查决定用urllib模块。
这个模块的功能比较强大,相当于简化版的postman(postman就是基于urllib开发的)
然后安装。pip install urllib失败……
显示:没有这个模块??????
然后,pip install urllib2,失败。
显示:没有这个模块。
退环境了?
我试了试:pip install urllib3。
成功了。
我XX狗了。你退环境百度还给我整这出??????
————————————————————————————
命令的话,相对比较简单:
import urllib3
urllib3.disable_warnings()
def get_net():
try:
http = urllib3.PoolManager()
r = http.request('GET', r'https://www.cnblogs.com/')
# print(r.data)
return True
except Exception as e:
print(e)
return False
当网络通畅的时候,会返回True。
当网络不通的时候,会返回False。
使用万能的sleep函数解决下。
while 1:
time.sleep(2)
if get_net():
print('网络稳定')
else:
print('断网')
千万要写sleep啊,不然就是网络攻击了……
然后,现在看起来,这个功能还是比之前的更好用。