开发中偶尔需要判断网络的连通性,没有什么方法比 ping 更直接了当,通常检查网络情况都是运行命令ping www.baidu.com ,查看输出信息即可。

C:\Users>ping www.baidu.com

正在 Ping www.baidu.com [61.135.169.125] 具有 32 字节的数据:

来自 61.135.169.125 的回复: 字节=32 时间=4ms TTL=57

来自 61.135.169.125 的回复: 字节=32 时间=7ms TTL=57

来自 61.135.169.125 的回复: 字节=32 时间=9ms TTL=57

来自 61.135.169.125 的回复: 字节=32 时间=9ms TTL=57

61.135.169.125 的 Ping 统计信息:

数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),

往返行程的估计时间(以毫秒为单位):

最短 = 4ms,最长 = 9ms,平均 = 7ms

简单方法

python执行批处理用多种方法,考虑到我们仅仅用于验证网络连通性,只需要最终的结果,os.system()方法最合适,执行cmd命令,并返回进程执行退出错误码。

import os

exit_code = os.system('ping www.baidu.com')

if exit_code:

raise Exception('connect failed.')

网络连通 exit_code == 0,否则返回非0值。

高级方法

获取访问域名的IP地址。正则表达式提取 [61.135.169.125] 数据。

获取网络实际连通的情况。正则表达式提取 TTL 和 时间 判断当前的网络状况。

使用 subprocess 管道调用的方式获取控制台输出信息,然后在使用正则表达式提取关键数据。

小结

相比其他方法判断网络连通性,命令行执行 ping 的方案实现简单、快捷、有效。

以上这篇python 判断网络连通的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

python测试网络连通性_python 判断网络连通的实现方法相关推荐

  1. python判断网络连通性_Python测试网络连通性示例【基于ping】

    本文实例讲述了Python测试网络连通性.分享给大家供大家参考,具体如下: Python代码 #!/usr/bin/python # -*- coding:GBK -*- ""&q ...

  2. python测试网络连通性_Python测试网络连通性示例【基于ping】

    本文实例讲述了Python测试网络连通性.,具体如下: Python代码 #!/usr/bin/python # -*- coding:GBK -*- """Docume ...

  3. python读取手机文件_python 读取 网络 文件

    Python之pandas数据加载.存储 Python之pandas数据加载.存储 0. 输入与输出大致可分为三类: 0.1 读取文本文件和其他更好效的磁盘存储格式 2.2 使用数据库中的数据 0.3 ...

  4. python高级网络编程_Python高级网络编程系列之基础篇

    一.Socket简介 1.不同电脑上的进程如何通信? 进程间通信的首要问题是如何找到目标进程,也就是操作系统是如何唯一标识一个进程的! 在一台电脑上是只通过进程号PID,但在网络中是行不通的,因为每台 ...

  5. linux网络连通性检测,C++ 网络连通性检测的实现方法

    C++ 网络连通性检测的实现方法 有时程序需要保持和某个指定网络的连通,有人的情况下我们直接用ping命令查看即可,然而程序自身检测会稍微麻烦一点. 实现思路如下: 用程序打开控制台->运行pi ...

  6. android 判断是否有网络连接,判断网络连接类型

    当App需要进行网络连接获取数据时,先进行判断是否有网络连接,并且对网络类型进行判断,可以有效地避免对用户造成不必要的困惑和损失. /** 判断是否有网络连接* @author tianjie* @r ...

  7. c语言如何检测网络是否连接,判断网络连接是否可用

    如果拟开发一个网络应用的程序,首先考虑是否接入网络,在Android手机中判断是否联网可以通过ConnectivityManager 类的isAvailable()方法判断,首先获取网络通讯类的实例 ...

  8. python 判断类是否有某个属性_python判断对象某个属性的方法有哪些

    python判断对象某个属性的方法有哪些 发布时间:2020-08-10 15:41:04 来源:亿速云 阅读:92 作者:小新 这篇文章给大家分享的是有关python判断对象某个属性的方法有哪些的内 ...

  9. python实时监控文件大小_python实现实时监控文件的方法

    在业务稳定性要求比较高的情况下,运维为能及时发现问题,有时需要对应用程序的日志进行实时分析,当符合某个条件时就立刻报警,而不是被动等待出问题后去解决,比如要监控nginx的$request_time和 ...

最新文章

  1. 排序算法之——插入排序
  2. 前端学习(774):查文档
  3. 关于在asp.net中播放MP4格式的视频(好吧,只兼容支持html5的浏览器,ie8及以下的都歇菜了)...
  4. tp 5.0 mysql 事物
  5. 手机鸿蒙OS框架,鸿蒙OS正式“开源”!区别于iOS和安卓,实现了真正的纯国产!...
  6. linux代码折叠,VIM 代码折叠 :set foldmethod=marker
  7. IOS发布APP Store
  8. 相关分析——皮尔逊相关系数、t显著性检验及Python实现
  9. 从奥卡姆剃刀定律再看决策树
  10. 东周科目三考场5号线_光明东周科目三考场,5条道图纸心得分享
  11. 简历背景图片设置html代码,怎么在简历中添加背景图片
  12. 如何写出自媒体10W+爆文?
  13. vbs脚本实现Ping功能
  14. 实训...实训...
  15. SQL Server2000中执行一个SQL, 在lock上发现自己锁自己
  16. android 刷机原理,分区。
  17. 特斯拉自动驾驶使用的技术_为什么特斯拉不会使用激光雷达
  18. 秋招面试!30K成功入职美团,忙里偷闲分享一波【面试经历+面试真题】
  19. 高德地图绘制行政边界
  20. 使用python读取gif,合并gif,视频转换为gif

热门文章

  1. Hibernate中基本概念
  2. 创建线程(Background Thread)的N种方式
  3. 基于visual c++之windows核心编程代码分析(64)现有的exe文件中添加自己的代码
  4. MVC --.Routing
  5. EOS 智能合约源代码解读 (5)class contract
  6. linux kernel中__setup()函数介绍
  7. [crypto]-51.2-从rsa公钥中提取N和E
  8. centos7 3行命令安装powershell
  9. 一个含有crc32算法的CrackMe分析
  10. PC微信逆向:分析发送xml名片call