Rumah > pembangunan bahagian belakang > Tutorial Python > Cara menggunakan Python untuk melaksanakan ujian rangkaian

Cara menggunakan Python untuk melaksanakan ujian rangkaian

王林
Lepaskan: 2023-05-17 18:41:05
ke hadapan
1987 orang telah melayarinya

Dibina untuk pembangun perisian, pentadbir sistem dan peminat komputer, Speedtest CLI ialah aplikasi Speedtest rasmi pertama yang berasal dari Linux yang dikuasakan oleh Ookla®.

Speedtest CLI yang ditulis dalam bahasa Python boleh dijalankan terus dari baris arahan untuk melaksanakan ujian kelajuan rangkaian. Ia juga boleh dipanggil terus dalam python IDE sebagai modul python.

Pertama, mari kita lihat cara memanggilnya dalam aplikasi python dan memasangnya terus menggunakan pip.

pip install speedtest-cli
Salin selepas log masuk

Import modul ini terus ke dalam blok kod semasa kami.

import speedtest as spt
Salin selepas log masuk

Buat objek ujian rangkaian

spd = spt.Speedtest()
Salin selepas log masuk

Cetak senarai pelayan yang tersedia pada masa ini untuk ujian

from pprint import pprint

pprint(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'}]}
Salin selepas log masuk

Dapatkan pelayan ujian terbaik semasa

spd.get_best_server()
print('测试开始,请稍等...')
Salin selepas log masuk

Dapatkan kelajuan Muat turun semasa

download = int(spd.download() / 1024 / 1024)
Salin selepas log masuk

Dapatkan kelajuan muat naik semasa

upload = int(spd.upload() / 1024 / 1024)

print(f'当前下载速度为:{str(download)} MB/s')
print(f'当前上传速度为:{str(upload)} MB/s')
print('测试已完成!')
Salin selepas log masuk

Cetak hasil pulangan akhir

Ujian bermula, sila tunggu...
Muat turun semasa Kelajuan ialah: 12 MB/s
Kelajuan muat naik semasa ialah: 13 MB/s
Ujian selesai!

Atas ialah kandungan terperinci Cara menggunakan Python untuk melaksanakan ujian rangkaian. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan