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

前言

本文主要跟大家分享了关于利用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)

总结

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

(0)

相关推荐

  • Python实现检测服务器是否可以ping通的2种方法

    好想在2014结束前再赶出个10篇博文来,~(>_<)~,不写博客真不是一个好兆头,至少说明对学习的欲望和对知识的研究都不是那么积极了,如果说这1天的时间我能赶出几篇精致的博文,你们信不信,哈哈,反正我是信了... python检测服务器是否ping通的2种方法 1.第一种比较挫,就是用ping,python调用shell,这个适用于较少的服务器数量,几百台已经很慢了(当然是说python同步的方法,要是nodejs异步方式还是很快的,但是nodejs CPU计算不行,所以尝试了下只能200台

  • 利用Python脚本实现ping百度和google的方法

    Ping服务 ping 是基于 XML_RPC 标准协议的更新通告服务,用于Blog把内容更新快速通知给搜索引擎,以便搜索引擎及时进行抓取和更新. 计算机就相当于 RPC Client ,用于向 RPC Server 发起请求,并接受方法的执行结果. Python实现方法 Python 内置了 XMLRPClib ,可以很方便地处理XMLRPC协议,免去了封包解包的麻烦. 用法很简单,首先导入库: import xmlrpclib 生成xmlrpc服务器对象: sever = xmlrpclib

  • Python实现快速多线程ping的方法

    本文实例讲述了Python实现快速多线程ping的方法.分享给大家供大家参考.具体如下: #!/usr/bin/python #_*_coding:utf-8_*_ # ''' 名称:快速多线程ping程序 开发:gyhong gyh9711 日期:20:51 2011-04-25 ''' import pexpect import datetime from threading import Thread host=["192.168.1.1","192.168.1.123

  • python在windows下实现ping操作并接收返回信息的方法

    本文实例讲述了python在windows下实现ping操作并接收返回信息的方法.分享给大家供大家参考.具体分析如下: 这段python代码调用windows下的ping命令,通过subprocess在其子进程里面实现,由于windows下的ping和linux下的ping返回的消息不太一样,所以这段python代码要想在linux下运行,需要修改一下正则匹配 复制代码 代码如下: import subprocess   import re p = subprocess.Popen(["ping

  • python实现ping的方法

    本文实例讲述了python实现ping的方法.分享给大家供大家参考.具体如下: #!/usr/bin/env python #coding:utf-8 import os, sys, socket, struct, select, time # From /usr/include/linux/icmp.h; your milage may vary. ICMP_ECHO_REQUEST = 8 # Seems to be the same on Solaris. def checksum(sou

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

    前言 本文主要跟大家分享了关于利用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 = subp

  • 利用python生成照片墙的示例代码

    PIL(Python Image Library)是python的第三方图像处理库,但是由于其强大的功能与众多的使用人数,几乎已经被认为是python官方图像处理库了.其官方主页为:PIL. PIL历史悠久,原来是只支持python2.x的版本的,后来出现了移植到python3的库pillow,pillow号称是friendly fork for PIL,其功能和PIL差不多,但是支持python3.本文只使用了PIL那些最常用的特性与用法,主要参考自:http://www.effbot.org

  • 利用Python实现网络测试的示例代码

    Speedtest CLI 专为软件开发人员.系统管理员和计算机爱好者等打造,是 Ookla® 提供技术支持的首款正式 Linux 本机 Speedtest 应用程序. Speedtest CLI是使用python语言开发的,不仅可以直接在命令行运行.也可以作为python模块在python IDE中直接调用. 首先,看一下如何在python应用中进行调用,使用pip直接安装. pip install speedtest-cli 将该模块直接导入到我们当前的代码块中. import speedt

  • 如何利用Python获取文本中的电话号码实例代码

    目录 前言 打开文本 正则表达式遍历电话 最后拼接输出 完整的代码↓ 使用方法 补充:使用Python提取电话号码和E-mail地址 结语 前言 此编制利用Python的简单编程,实现获取txt文本里的电话号码. 这里小编使用了Python3.8.6,os.re库 打开文本 #事先新建文本readphone.txt,将要提取的文章内容复制到readphone.txt里. 下方为Python打开文本 TXTtemp = open("readphone.txt","r+"

  • Python利用pythonping处理ping的示例详解

    目录 简介 历史攻略 Ping命令可以进行以下操作 安装 案例源码1 案例源码2 简介 ping (Packet Internet Groper)是一种因特网包探索器,用于测试网络连接量的程序 .Ping是工作在 TCP/IP网络体系结构中应用层的一个服务命令, 主要是向特定的目的主机发送 ICMP(Internet Control Message Protocol 因特网报文控制协议)Echo 请求报文,测试目的站是否可达及了解其有关状态.ping用于确定本地主机是否能与另一台主机成功交换(发

  • Python利用Turtle绘制Technoblade的示例代码

    在刚过去不久的6月30日那天,国外一位在YouTube拥有上千万粉丝的我的世界游戏主播Technoblade因癌症与世长辞,年仅23岁,他并没有离开我们,只是用另外一种方式活在了这个世界上. 为了纪念他,特地写了这篇文章,教大家用Turtle绘制出Technoblade,运行效果如下: 代码如下: 首先,用坐标表示每个像素块的颜色,定义一个列表 POS=[ [4,0,(213,164,9)], [6,0,(213,164,9)], [9,0,(213,164,9)], [11,0,(213,16

  • 利用Python获取操作系统信息实例

    前言 每一位运维人员都应该对自己所管理的机器配置很清楚,因为这对我们快速处理问题很有帮助,比如随着业务增长,突然某些机器负载上涨的厉害,这时候要排查原因,除了从应用程序.架构上分析外,当前硬件性能的分析应该是必不可少的一环,今天我们将不用第三方模块,用python自带模块和系统提供的运行信息来获取我们需要的信息,这个脚本除了硬件外,还抓取了当前系统进程数和网卡流量功能,所以这个版本实现的功能基本对应了之前psutil实现的内容,多的不说了,直接贴代码: #!/usr/bin/env python

  • 利用Python获取赶集网招聘信息前篇

    如何获取一个网站的相关信息,获取赶集网的招聘信息,本文为大家介绍利用python获取赶集网招聘信息的关键代码,供大家参考,具体内容如下 import re import urllib import urllib.request #获取赶集网数据 def begin(url): #要伪装成的浏览器(我这个是用的chrome) headers = ('User-Agent','Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML,

  • Python Flask基础教程示例代码

    本文研究的主要是Python Flask基础教程,具体介绍如下. 安装:pip install flask即可 一个简单的Flask from flask import Flask #导入Flask app = Flask(__name__) #创建一个Flask实例 #设置路由,即url @app.route('/') #url对应的函数 def hello_world(): #返回的页面 return 'Hello World!' #这个不是作为模块导入的时候运行,比如这个文件为aa.py,

  • Python无损压缩图片的示例代码

    每个设计师.摄影师或有图片处理需求小编,都会面临批量高清大图的困扰. 因为高清大图放到网站上会严重拖慢加载速度,或是有的地方明确限制了图片大小,因此,为了完成工作,他们总是需要先把图片压缩,再上传. 当需要处理的图片多至十张.百张.千张,则严重影响工作效率.这时候,就可以交给Python啦! 只需要20行Python代码,就可以批量帮你无损压缩数张照片. ---1--- 前期工作 安装Python中现成的图片处理模块,然后将图片打包好导入,用循环的方式自动化处理图片就可以了! ---2--- 运

随机推荐