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 31 Python
Python实现查找匹配项作处理后再替换回去的方法
Jun 10 Python
python中使用PIL制作并验证图片验证码
Mar 15 Python
python实现二维插值的三维显示
Dec 17 Python
python二进制文件的转译详解
Jul 03 Python
python 接口实现 供第三方调用的例子
Aug 13 Python
python利用openpyxl拆分多个工作表的工作簿的方法
Sep 27 Python
python数据爬下来保存的位置
Feb 17 Python
Python多线程多进程实例对比解析
Mar 12 Python
python和php哪个容易学
Jun 19 Python
python反扒机制的5种解决方法
Feb 06 Python
python实现图片转字符画的完整代码
Feb 21 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下载远程文件的3种方法
2015/12/29 PHP
php基于Fleaphp框架实现cvs数据导入MySQL的方法
2016/02/23 PHP
validator验证控件使用代码
2010/11/23 Javascript
setTimeout的延时为0时多个浏览器的区别
2012/05/23 Javascript
到处都是jQuery选择器的年代 不了解它们的性能,行吗
2012/06/18 Javascript
JS+CSS实现一个气泡提示框
2013/08/18 Javascript
js判断为空Null与字符串为空简写方法
2014/02/24 Javascript
JS+CSS实现简易的滑动门效果代码
2015/09/24 Javascript
探究react-native 源码的图片缓存问题
2017/08/24 Javascript
基于 Vue.js 2.0 酷炫自适应背景视频登录页面实现方式
2018/01/17 Javascript
把vue-router和express项目部署到服务器的方法
2018/02/21 Javascript
浅谈redux, koa, express 中间件实现对比解析
2019/05/23 Javascript
vue组件三大核心概念图文详解
2019/05/30 Javascript
JavaScript展开操作符(Spread operator)详解
2019/07/20 Javascript
JavaScript字符串处理常见操作方法小结
2019/11/15 Javascript
利用Python中的输入和输出功能进行读取和写入的教程
2015/04/14 Python
Python之os操作方法(详解)
2017/06/15 Python
django初始化数据库的实例
2018/05/27 Python
python之文件读取一行一行的方法
2018/07/12 Python
python根据文章标题内容自动生成摘要的实例
2019/02/21 Python
深入解析Python小白学习【操作列表】
2019/03/23 Python
十行代码使用Python写一个USB病毒
2019/06/21 Python
Python3.0 实现决策树算法的流程
2019/08/08 Python
python中property属性的介绍及其应用详解
2019/08/29 Python
python时间time模块处理大全
2020/10/25 Python
写一个方法1000的阶乘
2012/11/21 面试题
中学生学习生活的自我评价
2013/10/26 职场文书
成教自我鉴定
2013/10/27 职场文书
优秀英语专业毕业生求职信
2013/11/23 职场文书
中学生国旗下讲话稿
2014/04/26 职场文书
教师党员公开承诺事项
2014/05/28 职场文书
入党个人总结范文
2015/03/02 职场文书
2015年手术室工作总结
2015/05/11 职场文书
新教师教学工作总结
2015/08/14 职场文书
iPhone13将有八大升级
2021/04/15 数码科技
实现AJAX异步调用和局部刷新的基本步骤
2022/03/17 Javascript