如何在Python中使用speedtest-cli指定特定服务器进行测速?
指定Speedtest服务器进行测速
你可以通过speedtest.Speedtest的get_servers()方法直接传入目标服务器ID,指定测速服务器,无需再调用get_best_server()。具体实现如下:
- 将你获取到的最近服务器ID以列表形式传入
get_servers(),方法会自动筛选并加载对应服务器的信息 - 跳过自动选优逻辑,直接使用指定服务器执行测速
修改后的完整代码:
import speedtest # 替换为你实际获取到的最近服务器ID TARGET_SERVER_ID = ["12345"] test = speedtest.Speedtest(secure=1) # 指定目标服务器 test.get_servers(TARGET_SERVER_ID) # 获取已选定的服务器信息 selected_server = test.servers[0] print(f"Selected: {selected_server['host']} located in {selected_server['country']}") download_result = test.download() upload_result = test.upload() ping_result = test.results.ping print(f"Download Speed: {download_result / 1024 / 1024:.2f} Mbit/s") print(f"Upload Speed: {upload_result / 1024 / 1024:.2f} Mbit/s") print(f"Ping: {ping_result} ms")
关键说明:
get_servers()支持接收服务器ID的列表,即使只有一个ID也需要放在列表中- 传入指定ID后,
test.servers仅包含你选择的服务器,后续测速操作会直接使用该服务器 - 注意修正了原代码中Ping的单位(实际应为毫秒
ms,而非秒s)
内容的提问来源于stack exchange,提问作者Hamsi
相关产品推荐
相关产品推荐

