Python3,6行代码,搞定网络测速神器,我直接卸载某60测速器

举报
Carl_奕然 发表于 2023/08/28 18:09:30 2023/08/28
【摘要】 6行代码,我差点相信了。

1、引言


小云:鱼哥,你知道speedtest 这个库吗?
小鱼:嗯,知道一点点,咋了?
小云:那你教教我怎么使用呗?
小鱼:这还用我教你? AIGC就能回答你的疑问。
小云:哎呀,你比AIGC好用。
小鱼:… 感情我在你这,就是一个工具啊。
小云:不不不, 我的意思, 你回答的比AIGC回答的更符合我的想法。
小鱼:我… 好吧,那你再说一遍。
小云:我说你回答完美。

在这里插入图片描述
小鱼:嘿嘿…我说, 我都说!

2、代码实战


2.1 介绍


2.1.1 定义

speedtest是一个用于测试网络速度的Python库。
它使用Speedtest.net网站的API来测试网络连接的下载和上传速度,并返回测试结果。
使用speedtest库可以很方便地测试网络连接的速度,并可以用于监控网络性能和诊断网络问题。


2.1.2 常用方法

常用方法就5种,如下:

  • speedtest.Speedtest():创建一个Speedtest对象。
  • get_best_server():寻找并返回最佳服务器。
  • download():执行下载速度测试,并返回下载速度(以比特/秒为单位)。
  • upload():执行上传速度测试,并返回上传速度(以比特/秒为单位)。
  • results.dict():以字典形式返回所有测试结果,包括Ping延迟、下载速度、上传速度等。

2.1.3 功能


测试网络的下载和上传速度,帮助开发者评估网络性能。
提供最佳服务器的选择,以确保测试结果准确。
返回详细的测试结果,包括Ping延迟、下载速度、上传速度等信息,方便开发者分析和记录。

2.2 安装

因为gtts 是第三方库, 所以使用前,需要安装:

pip install speedtest-cli


其余安装方式,可以参照这两篇:

  • 《Python3,选择Python自动安装第三方库,从此跟pip说拜拜!!》
  • 《Python3:我低调的只用一行代码,就导入Python所有库!》


安装完成,就可以进行代码编写了。

2.3 示例


2.3.1 测试上传下载速度


代码示例

# -*- coding:utf-8 -*-
# @Time   : 2023-08-15
# @Author : Carl_DJ
'''
实现功能:
    测试上传与下载速度
'''
import speedtest

result = speedtest.net()

upload_speed = result.upload_speed
download_speed = result.download_speed


2.3.2 测试延迟


代码示例

# -*- coding:utf-8 -*-
# @Time   : 2023-08-15
# @Author : Carl_DJ
'''
实现功能:
    测试延迟,  如:ping
'''
import speedtest

result = speedtest.net()

ping_speed = result.ping_speed


2.3.3 自定义服务器测试


代码示例

# -*- coding:utf-8 -*-
# @Time   : 2023-08-15
# @Author : Carl_DJ
'''
实现功能:
    测试服务器速度
'''
import speedtest

#测试CSDN服务器,嘿嘿..
result = speedtest.net(server='https://blog.csdn.net/')

upload_speed = result.upload_speed
download_speed = result.download_speed


2.3.4 多连接测试


代码示例

# -*- coding:utf-8 -*-
# @Time   : 2023-08-15
# @Author : Carl_DJ
'''
实现功能:
    测试多个链接
'''
import speedtest

#测试 C站和百度
result1 = speedtest.net(server='https://blog.csdn.net/', test_number=1)
result2 = speedtest.net(server='www.baidu.com', test_number=2)

upload_speed1 = result1.upload_speed
download_speed1 = result1.download_speed

upload_speed2 = result2.upload_speed
download_speed2 = result2.download_speed



2.3.5 实战

# -*- coding:utf-8 -*-
# @Time   : 2023-08-15
# @Author : Carl_DJ
'''
实现功能:
    网络测速器
'''


import speedtest as st

# 设置最佳测试服务区
server = st.Speedtest()
server.get_best_server()

# 测试下载速度
down_sp = server.download()
down = down_sp  / 1000000
print(f"下载网速为: {down_sp } Mb/s")

# 测试上传网速
up_sp = server.upload()
up = up_sp  / 1000000
print(f"上传网速为: {up } Mb/s")

# 测试ping速度
ping = server.results.ping
print(f"Ping 速度: {ping}")

3、总结


看到这里,今天的分享差不多就结束了 。
今天主要分享通过使用speedtest库进行上传、下载等网速测试。

我是小鱼:

  • CSDN 博客专家;
  • 阿里云 专家博主;
  • 51CTO博客专家;
  • 51认证讲师等;
  • 认证金牌面试官;
  • 职场面试及培训规划师;
  • 多个国内主流技术社区的认证专家博主;
  • 多款主流产品(阿里云等)测评一、二等奖获得者;

关注我,带你学习更多更专业更前言的Python技术。



【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。