您好,欢迎访问一九零五行业门户网

怎么利用Python实现网络测试

speedtest cli 专为软件开发人员、系统管理员和计算机爱好者等打造,是 ookla® 提供技术支持的首款正式 linux 本机 speedtest 应用程序。
python语言编写的speedtest cli可在命令行直接运行,实现网络速度测试。也可以作为python模块在python ide中直接调用。
首先,看一下如何在python应用中进行调用,使用pip直接安装。
pip install speedtest-cli
将该模块直接导入到我们当前的代码块中。
import speedtest as spt
创建网络测试对象
spd = spt.speedtest()
打印当前可用于测试的服务器列表
from pprint import pprintpprint(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': 'china mobile hebei co., ltd',# 'url': 'http://speedtest1.he.chinamobile.com:8080/speedtest/upload.php'}],# 776.2668436087947: [{'cc': 'cn',# 'country': 'china',# 'd': 776.2668436087947,# 'host': '5gtest.shangdu.com:8080',# 'id': '36646',# 'lat': '34.7466',# 'lon': '113.6253',# 'name': 'zhengzhou',# 'sponsor': 'china unicom henan 5g',# 'url': 'http://5gtest.shangdu.com:8080/speedtest/upload.php'}],# 1051.7168853741107: [{'cc': 'mn',# 'country': 'mongolia',# 'd': 1051.7168853741107,# 'host': 'speedtest.gemnet.mn:8080',# 'id': '2853',# 'lat': '47.9200',# 'lon': '106.9200',# 'name': 'ulaanbaatar',# 'sponsor': 'gemnet llc',# 'url': 'http://speedtest.gemnet.mn:8080/speedtest/upload.php'},# {'cc': 'mn',# 'country': 'mongolia',# 'd': 1051.7168853741107,# 'host': 'speedtest1.kewiko.mn:8080',# 'id': '30772',# 'lat': '47.9200',# 'lon': '106.9200',# 'name': 'ulaanbaatar',# 'sponsor': 'kewiko llc',# 'url': 'http://speedtest1.kewiko.mn:8080/speedtest/upload.php'}],# 1339.1170164273938: [{'cc': 'cn',# 'country': 'china',# 'd': 1339.1170164273938,# 'host': '5gnanjing.speedtest.jsinfo.net:8080',# 'id': '26352',# 'lat': '32.0500',# 'lon': '118.7667',# 'name': 'nanjing',# 'sponsor': 'china telecom jiangsu 5g',# 'url': 'http://5gnanjing.speedtest.jsinfo.net:8080/speedtest/upload.php'}],# 1340.7612716854985: [{'cc': 'cn',# 'country': 'china',# 'd': 1340.7612716854985,# 'host': 'speedtest02.js165.com:8080',# 'id': '13704',# 'lat': '32.0602',# 'lon': '118.7968',# 'name': 'nanjing',# 'sponsor': 'china unicom',# 'url': 'http://speedtest02.js165.com:8080/speedtest/upload.php'}],# 1381.9129755930571: [{'cc': 'cn',# 'country': 'china',# 'd': 1381.9129755930571,# 'host': 'speedtest.zjmobile.com:8080',# 'id': '17320',# 'lat': '32.2069',# 'lon': '119.4490',# 'name': 'zhenjiang',# 'sponsor': 'china mobile jiangsu 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': 'ulan-ude',# 'sponsor': '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': 'baikal teleport',# 'url': 'http://speedtest.bteleport.ru:8080/speedtest/upload.php'},# {'cc': 'ru',# 'country': 'russia',# '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('测试已完成!')
打印出最终的返回结果
测试开始,请稍等...
当前下载速度为:12 mb/s
当前上传速度为:13 mb/s
测试已完成!
以上就是怎么利用python实现网络测试的详细内容。
其它类似信息

推荐信息