python 判断网络连通的实现方法


Posted in Python onApril 22, 2018

开发中偶尔需要判断网络的连通性,没有什么方法比 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采集腾讯新闻实例
Jul 10 Python
Python实现批量读取word中表格信息的方法
Jul 30 Python
使用tensorflow实现线性回归
Sep 08 Python
对Python实现累加函数的方法详解
Jan 23 Python
钉钉群自定义机器人消息Python封装的实例
Feb 20 Python
Python 实现顺序高斯消元法示例
Dec 09 Python
Python 解决OPEN读文件报错 ,路径以及r的问题
Dec 19 Python
Python类反射机制使用实例解析
Dec 30 Python
pytorch 状态字典:state_dict使用详解
Jan 17 Python
Python语法垃圾回收机制原理解析
Mar 25 Python
python实现批处理文件
Jul 28 Python
python中常用的数据结构介绍
Jan 12 Python
Python3之读取连接过的网络并定位的方法
Apr 22 #Python
对Python 网络设备巡检脚本的实例讲解
Apr 22 #Python
python爬虫_实现校园网自动重连脚本的教程
Apr 22 #Python
selenium+python实现自动登录脚本
Apr 22 #Python
python实现校园网自动登录的示例讲解
Apr 22 #Python
用Python写一段用户登录的程序代码
Apr 22 #Python
python实现简单登陆流程的方法
Apr 22 #Python
You might like
PHP获取数组中某元素的位置及array_keys函数应用
2013/01/29 PHP
DOM基础及php读取xml内容操作的方法
2015/01/23 PHP
Javascript 八进制转义字符(8进制)
2011/04/08 Javascript
使用Jquery搭建最佳用户体验的登录页面之记住密码自动登录功能(含后台代码)
2011/07/10 Javascript
Javascript中的delete介绍
2012/09/02 Javascript
jQuery解决下拉框select设宽度时IE 6/7/8下option超出显示不全
2013/05/27 Javascript
浅析jQuery中常用的元素查找方法总结
2013/07/04 Javascript
JS的千分位算法实现思路
2013/07/31 Javascript
图标线性回归斜着移动到指定的位置
2013/08/16 Javascript
JS常用正则表达式总结
2013/11/12 Javascript
解决jquery插件冲突的问题
2014/01/23 Javascript
JavaScript编程的10个实用小技巧
2014/04/18 Javascript
For循环中分号隔开的3部分的执行顺序探讨
2014/05/27 Javascript
一段非常简单的js判断浏览器的内核
2014/08/17 Javascript
原生JavaScript实现合并多个数组示例
2014/09/21 Javascript
JS控制弹出新页面窗口位置和大小的方法
2015/03/02 Javascript
js实现文本框支持加减运算的方法
2015/08/19 Javascript
jqGrid表格应用之新增与删除数据附源码下载
2015/12/02 Javascript
JS图片左右无缝隙滚动的实现(兼容IE,Firefox 遵循W3C标准)
2016/09/23 Javascript
JavaScript验证知识整理
2017/03/24 Javascript
AngularJS实时获取并显示密码的方法
2018/02/06 Javascript
jQuery实现ajax回调函数带入参数的方法示例
2018/06/26 jQuery
vue实现简单学生信息管理
2020/05/30 Javascript
解决nuxt页面中mounted、created、watch执行两遍的问题
2020/11/05 Javascript
Python远程桌面协议RDPY安装使用介绍
2015/04/15 Python
python pandas 对时间序列文件处理的实例
2018/06/22 Python
Django上线部署之IIS的配置方法
2019/08/22 Python
使用Python 自动生成 Word 文档的教程
2020/02/13 Python
Python持续监听文件变化代码实例
2020/07/22 Python
如何利用python进行时间序列分析
2020/08/04 Python
css3动画鼠标放上图片逐渐变大鼠标离开图片逐渐缩小效果
2021/01/27 HTML / CSS
美国彩妆品牌:Coastal Scents
2017/04/01 全球购物
Shell脚本如何向终端输出信息
2014/04/25 面试题
结婚周年感言
2014/02/24 职场文书
微信小程序实现聊天室功能
2021/06/14 Javascript
教你使用一行Python代码玩遍童年的小游戏
2021/08/23 Python