Python测试网络连通性示例【基于ping】

yipeiwu_com6年前Python基础

本文实例讲述了Python测试网络连通性。分享给大家供大家参考,具体如下:

Python代码

#!/usr/bin/python
# -*- coding:GBK -*-
"""Document: network script, keep network always working, using python3"""
import os
import time
PING_RESULT = 0
NETWORK_RESULT = 0
def DisableNetwork():
 ''' disable network card '''
 result = os.system(u"netsh interface set interface 以太网 disable")
 if result == 1:
  print("disable network card failed")
 else:
  print("disable network card successfully")
def ping():
 ''' ping 主备网络 '''
 result = os.system(u"ping 180.97.33.108")
 #result = os.system(u"ping www.baidu.com -n 3")
 if result == 0:
  print("A网正常")
 else:
  print("网络故障")
 return result
if __name__ == '__main__':
 while True:
  PING_RESULT = ping()
  if PING_RESULT == 0:
   time.sleep(20)
  else:
   DisableNetwork()
   time.sleep(10)

运行结果:

注:原文为utf-8编码,这里小编测试时发现返回结果会出现乱码,故改为GBK编码。

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python sys.path详细介绍

如何将路径“永久"添加到sys.path? sys.path是python的搜索模块的路径集,是一个list 复制代码 代码如下:['', 'C:\\WINDOWS\\system32\...

基于Python实现定时自动给微信好友发送天气预报

基于Python实现定时自动给微信好友发送天气预报

效果图 from wxpyimport * import requests from datetimeimport datetime import time from apsche...

深入理解python中的浅拷贝和深拷贝

深入理解python中的浅拷贝和深拷贝

在讲什么是深浅拷贝之前,我们先来看这样一个现象: a = ['scolia', 123, [], ] b = a[:] b[2].append(666) print a print...

使用django实现一个代码发布系统

使用django实现一个代码发布系统

一 前期说明: 我运行项目的环境是nginx+php,存储代码用的是gitlab, python版本:3.6 django版本:2.2.1 mysql版本:5.7 二 大体思路 1 需要...

Python笔记之观察者模式

观察者模式中的主题对象一般存在着一个其他服务依赖的核心服务,并且维护着其他依赖此核心服务的对象列表(即观察者或监视者列表),当主题对象发生变化时,观察者应该改变自己的状态或者进行某些操作...