当前位置: 首页 > 后端技术 > Python

python如何实现网络测试,了解speedtest-cli...

时间:2023-03-26 00:49:32 Python

是一款面向开发者的网络连接测量工具。SpeedtestCLI将Speedtest背后的可信技术和全球服务器网络引入命令行。【阅读全文】SpeedtestCLI专为软件开发人员、系统管理员、计算机爱好者等打造,是第一个由Ookla?提供支持的官方Linux原生Speedtest应用程序。SpeedtestCLI是使用python语言开发的,不仅可以直接在命令行运行。也可以直接在pythonIDE中作为python模块调用。首先,我们看一下如何在python应用程序中调用并直接使用pip安装。pipinstallspeedtest-cli将这个模块直接导入到我们当前的代码块中。importspeedtestasspt创建网络测试对象spd=spt.Speedtest()打印当前可用于测试的服务器列表frompprintimportpprintpprint(spd.get_servers())#{721.5702755019188:[{'cc':'CN',#'country':'China',#'d':721.5702755019188,#'host':'speedtest1.he.chinamobile.com:8080',#'id':'41912',#'lat':'38.0428',#'lon':'114.5149',#'name':'石家庄',#'sponsor':'中国移动河北有限公司',#'url':'http://speedtest1.he.chinamobile.com:8080/speedtest/upload.php'}],#776.2668436087947:[{'cc':'CN',#'国家':'中国',#'d':776.2668436087947,#'host':'5gtest.shangdu.com:8080',#'id':'36646',#'lat':'34.7466',#'lon':'113.6253',#'name':'郑州',#'sponsor':'中国联通河南5G',#'url':'http://5gtest.shangdu.com:8080/speedtest/upload.php'}],#1051.7168853741107:[{'cc':'MN',#'country':'蒙古',#'d':1051.7168853741107,#'host':'speedtest.gemnet.mn:8080',#'id':'2853',#'lat':'47.9200',#'lon':'106.9200',#'name':'Ulaanbaatar',#'sponsor':'GemnetLLC',#'url':'http://speedtest.gemnet.mn:8080/speedtest/upload.php'},#{'cc':'MN',#'country':'蒙古',#'d':1051.7168853741107,#'host':'speedtest1.kewiko.mn:8080',#'id':'30772',#'lat':'47.9200',#'lon':'106.9200',#'name':'Ulaanbaatar',#'sponsor':'KewikoLLC',#'url':'http://speedtest1.kewiko.mn:8080/speedtest/upload.php'}],#1339.1170164273938:[{'cc':'CN',#'country':'中国',#'d':1339.1170164273938,#'host':'5gnanjing.speedtest.jsinfo.net:8080',#'id':'26352',#'lat':'32.0500',#'lon':'118.7667',#'name':'南京',#'sponsor':'中国电信江苏5G',#'url':'http://5gnanjing.speedtest.jsinfo.net:8080/speedtest/upload.php'}],#1340.7612716854985:[{'cc':'CN',#'country':'中国',#'d':1340.7612716854985,#'host':'speedtest02.js165.com:8080',#'id':'13704',#'lat':'32.0602',#'lon':'118.7968',#'name':'南京',#'sponsor':'中国联通',#'url':'http:///speedtest02.js165.com:8080/speedtest/upload.php'}],#1381.9129755930571:[{'cc':'CN',#'country':'中国',#'d':1381.9129755930571,#'host':'speedtest.zjmobile.com:8080',#'id':'17320',#'lat':'32.2069',#'lon':'119.4490',#'name':'镇江',#'sponsor':'中国移动江苏5G',#'url':'http://speedtest.zjmobile.com:8080/speedtest/upload.php'}],#1489.08809618835:[{'cc':'RU',#'country':'Russia',#'d':1489.08809618835,#'host':'speedtest-ude.edinos.ru:8080',#'id':'36254',#'lat':'51.8336',#'lon':'107.5840',#'name':'乌兰乌德',#'赞助商':'EDINOS',#'url':'http://speedtest-ude.edinos.ru:8080/speedtest/upload.php'}],#1542.170901504592:[{'cc':'RU',#'country':'Russia',#'d':1542.170901504592,#'host':'speedtest.bteleport.ru:8080',#'id':'18543',#'lat':'52.2757',#'lon':'104.3087',#'name':'Irkutsk',#'sponsor':'BaikalTeleport',#'url':'http://speedtest.bteleport.ru:8080/speedtest/upload.php'},#{'cc':'RU',#'country':'俄罗斯',#'d':1542.170901504592,#'host':'speedtest-irkutsk.fttb.beeline.ru:8080',#'id':'31472',#'lat':'52.2757',#'lon':'104.3087',#'name':'Irkutsk',#'sponsor':'Beeline',#'url':'http://speedtest-irkutsk.fttb.beeline.ru:8080/speedtest/upload.php'}]}获取当前最好的测试服务器spd.get_best_server()print('测试开始,请稍候...')获取当前下载速度download=int(spd.download()/1024/1024)获取当前上传速度upload=int(spd.upload()/1024/1024)print(f'当前下载速度为:{str(download)}MB/s')print(f'当前上传速度为:{str(upload)}MB/s')print('测试完成!')打印最终返回结果测试开始,请稍候...当前下载速度:12MB/s当前上传速度:13MB/s测试完成!【优秀往期】模型写好了,怎么表达就看你的了!如何根据照片获取地理位置以及如何防止地理位置被照片泄露!又到了樱花的季节,用小乌龟画一棵樱花树吧!python读取PDF文件为文本字符并转为音频...python获取最新房价信息-以北京房价为例办公自动化:将Image图片转为PDF文档存储...python制作微美图像处理器,十一行代码就可以搞定……用python做文本翻译器,自动把中文翻译成英文,超级方便!小王,给这2000个客户发一封节日祝福邮件...一行python命令实现网络间文件共享...PyQt5批量删除Excel重复数据,删除多个文件,一键自定义重复...再见XShell,这个中文开源的终端命令行工具更好用!