利用python获取Ping结果示例代码


Posted in Python onJuly 06, 2017

前言

本文主要跟大家分享了关于利用python获取Ping结果的相关内容,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍吧。

示例代码:

# -*- coding: utf-8 -*-

import subprocess
import re

def get_ping_result(ip_address):
 p = subprocess.Popen(["ping.exe", ip_address], stdin = subprocess.PIPE, stdout = subprocess.PIPE, stderr = subprocess.PIPE, shell = True)
 out = p.stdout.read().decode('gbk')
 
 reg_receive = '已接收 = \d'
 match_receive = re.search(reg_receive, out)
 
 receive_count = -1
 
 if match_receive:
  receive_count = int(match_receive.group()[6:])
 
 if receive_count > 0: #接受到的反馈大于0,表示网络通
  reg_min_time = '最短 = \d+ms'
  reg_max_time = '最长 = \d+ms'
  reg_avg_time = '平均 = \d+ms'
  
  match_min_time = re.search(reg_min_time, out)
  min_time = int(match_min_time.group()[5:-2])
  
  match_max_time = re.search(reg_max_time, out)
  max_time = int(match_max_time.group()[5:-2])
  
  match_avg_time = re.search(reg_avg_time, out)
  avg_time = int(match_avg_time.group()[5:-2])
  
  return [receive_count, min_time, max_time, avg_time]
 else:
  print('网络不通,目标服务器不可达!')
  return [0, 9999, 9999, 9999]
  
if __name__ == '__main__':
 ping_result = get_ping_result('114.80.83.69')
 print(ping_result)

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python中xrange和range的区别
May 13 Python
python dict.get()和dict['key']的区别详解
Jun 30 Python
Python安装第三方库及常见问题处理方法汇总
Sep 13 Python
详解python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别
Jun 23 Python
TensorFlow深度学习之卷积神经网络CNN
Mar 09 Python
python+pandas+时间、日期以及时间序列处理方法
Jul 10 Python
浅述python中深浅拷贝原理
Sep 18 Python
Python猫眼电影最近上映的电影票房信息
Sep 18 Python
python正则表达式re.match()匹配多个字符方法的实现
Jan 27 Python
Python实现随机爬山算法
Jan 29 Python
利用Python第三方库实现预测NBA比赛结果
Jun 21 Python
python中redis包操作数据库的教程
Apr 19 Python
Python中工作日类库Busines Holiday的介绍与使用
Jul 06 #Python
Python中动态检测编码chardet的使用教程
Jul 06 #Python
Python解析json之ValueError: Expecting property name enclosed in double quotes: line 1 column 2(char 1)
Jul 06 #Python
CentOS 7下Python 2.7升级至Python3.6.1的实战教程
Jul 06 #Python
Python中定时任务框架APScheduler的快速入门指南
Jul 06 #Python
Python如何快速实现分布式任务
Jul 06 #Python
Python3下错误AttributeError: ‘dict’ object has no attribute’iteritems‘的分析与解决
Jul 06 #Python
You might like
php将数据库导出成excel的方法
2010/05/07 PHP
PHP 数组排序方法总结 推荐收藏
2010/06/30 PHP
php数组函数序列之array_sum() - 计算数组元素值之和
2011/10/29 PHP
PHP 观察者模式的实现代码
2013/05/10 PHP
24条货真价实的PHP代码优化技巧
2016/07/28 PHP
WAF的正确bypass
2017/01/05 PHP
简单实用的PHP文本缓存类实例
2019/03/22 PHP
laravel实现于语言包的完美切换方法
2019/09/29 PHP
用jquery与css打造个性化的单选框和复选框
2010/10/20 Javascript
浅谈javascript的原型继承
2012/07/25 Javascript
jQuery实现仿腾讯微博滑出效果报告每日天气的方法
2015/05/11 Javascript
JQuery分屏指示器图片轮换效果实例
2015/05/21 Javascript
js实现向右横向滑出的二级菜单效果
2015/08/27 Javascript
JS Attribute属性操作详解
2016/05/19 Javascript
用jQuery向div中添加Html文本内容的简单实现
2016/07/13 Javascript
JavaScript正则替换HTML标签功能示例
2017/03/02 Javascript
vue-router实现webApp切换页面动画效果代码
2017/05/25 Javascript
使用Nodejs连接mongodb数据库的实现代码
2017/08/21 NodeJs
JS如何设置元素样式的方法示例
2017/08/28 Javascript
BootStrap点击保存后实现模态框自动关闭的思路(模态框)
2017/09/26 Javascript
JS严格模式知识点总结
2018/02/27 Javascript
Vue中v-for的数据分组实例
2018/03/07 Javascript
JavaScript实现一个简易的计算器实例代码
2018/05/10 Javascript
解决Vue中mounted钩子函数获取节点高度出错问题
2018/05/18 Javascript
jQuery实现input输入框获取焦点与失去焦点时提示的消失与显示功能示例
2019/05/27 jQuery
MockJs结合json-server模拟后台数据
2020/08/26 Javascript
vue 根据选择条件显示指定参数的例子
2019/11/09 Javascript
python处理json数据中的中文
2014/03/06 Python
用python读写excel的方法
2014/11/18 Python
python+pyqt5实现KFC点餐收银系统
2019/01/24 Python
CSS3 实现的加载动画
2020/12/07 HTML / CSS
HTML5 Canvas 旋转风车绘制
2017/08/18 HTML / CSS
个人三严三实对照检查材料
2014/09/25 职场文书
期末考试复习计划
2015/01/19 职场文书
银行求职自荐信范文
2015/03/04 职场文书
老乡会致辞
2015/07/28 职场文书