Ole*_*nge 15 bandwidth testing
在 3 台机器上,我得到:
$ speedtest-cli
Retrieving speedtest.net configuration...
Traceback (most recent call last):
File "/usr/bin/speedtest-cli", line 11, in <module>
load_entry_point('speedtest-cli==2.1.2', 'console_scripts', 'speedtest-cli')()
File "/usr/lib/python3/dist-packages/speedtest.py", line 1986, in main
shell()
File "/usr/lib/python3/dist-packages/speedtest.py", line 1872, in shell
speedtest = Speedtest(
File "/usr/lib/python3/dist-packages/speedtest.py", line 1091, in __init__
self.get_config()
File "/usr/lib/python3/dist-packages/speedtest.py", line 1173, in get_config
ignore_servers = list(
ValueError: invalid literal for int() with base 10: ''
Run Code Online (Sandbox Code Playgroud)
我已经在两个不同的互联网连接上测试了其中一台机器,结果相同。
为什么它不起作用?
mwf*_*ley 21
从这个 speedtest-cli Pull Request,我收集到 speedtest 站点在他们的 API 给出的响应中已经改变了一些东西。查看 PR 中的第一次提交,您只需要修改 speedtest.py 中的一行。
如果您使用的是 Ubuntu 或类似版本,并且您在输出中显示的位置拥有该文件,则可以使用以下命令修复它:
## Backup original code
sudo gzip -k9 /usr/lib/python3/dist-packages/speedtest.py
## Make the line substitution
sed -i "s/^ map(int, server_config\['ignoreids'\].split(','))$/ map(int, (server_config['ignoreids'].split(',') if len(server_config['ignoreids']) else []) )/" /usr/lib/python3/dist-packages/speedtest.py
Run Code Online (Sandbox Code Playgroud)
编辑:最终补丁位于https://github.com/sivel/speedtest-cli/commit/cadc68,并在v2.1.3 中发布。对于一个简单的单行 sed 命令来说太复杂了,但您仍然可以自己手动应用它。或者您可以尝试自己下载该版本的 speedtest.py 文件:
sudo gzip -k9 /usr/lib/python3/dist-packages/speedtest.py
sudo wget https://raw.githubusercontent.com/sivel/speedtest-cli/v2.1.3/speedtest.py \
-O /usr/lib/python3/dist-packages/speedtest.py
Run Code Online (Sandbox Code Playgroud)
(同样,您应该仔细检查 speedtest.py 文件的位置。上述位置似乎在 Ubuntu 中很常见,但不适用于所有版本的 Unix/Linux。)
小智 5
我通过使用这两个命令来工作:
sudo apt install python-pip -y && sudo pip install speedtest-cli
Run Code Online (Sandbox Code Playgroud)