【Python 第三方库】speedtest-cli

2024-01-25 00:00:00

目录:

speedtest-cli 模块介绍

speedtest-cli 是一个基于 Python 开发的命令行网络测速工具,它依托于 Ookla 的 Speedtest.net 服务,能够精准测量网络的上传速度、下载速度及延迟(ping)等关键性能指标。测试过程模拟了浏览器下载文件、上传视频等日常网络活动,因此结果具有较高的参考价值。

安装依赖:

$ pip install speedtest-cli -i https://pypi.tuna.tsinghua.edu.cn/simple

测量网速

原理是先获取距离本地最近的服务器,然后模拟下载文件,上传文件,从而计算出网速。

import speedtest

def test_internet_speed():
    # 创建 Speedtest 对象
    st = speedtest.Speedtest()
    
    print('正在获取距离当前地最近的服务器')
    # 会连接到 Speedtest.net 的 API,获取全球服务器列表
    # 并通过发送小的数据包(ping)测量往返时间(RTT)
    # 自动选择延迟最低且稳定的服务器作为测试节点
    st.get_best_server()
    
    print('开始测试下载速度')
    # 测试下载速度(单位:比特每秒)
    download_speed_bps = st.download()
    # 转换为更常用的兆比特每秒 (Mbps)
    download_speed_mbps = download_speed_bps / 1_000_000
    
    print('开始测试上传速度')
    # 测试上传速度
    upload_speed_bps = st.upload()
    upload_speed_mbps = upload_speed_bps / 1_000_000
    
    # 获取网络延迟 (ping)
    ping_ms = st.results.ping
    
    # 输出结果
    print(f"延迟 (Ping): {ping_ms:.2f} ms")
    print(f"下载速度: {download_speed_mbps:.2f} Mbps")
    print(f"上传速度: {upload_speed_mbps:.2f} Mbps")

if __name__ == "__main__":
    test_internet_speed()

返回首页

本文总阅读量  次
皖ICP备17026209号-3
总访问量: 
总访客量: