【问题标题】:python 'speedtest' has no attribute 'Speedtest'python 'speedtest' 没有属性 'Speedtest'
【发布时间】:2021-05-20 19:26:05
【问题描述】:

我正在尝试使用“speedtest”模块在 python 中获取下载和上传速度,但是当我使用该模块时它给了我这个错误:

AttributeError: 模块“speedtest”没有属性“Speedtest”。

我只是声明了变量, 那是我的代码:

import speedtest

speedtester = speedtest.Speedtest()

由于某种原因,该模块实际上没有这些功能。 请告诉我我的代码有什么问题我确定从 cmd 和 pycharm 终端导入模块,但仍然遇到相同的错误。 提前致谢

【问题讨论】:

  • 看起来您可以在与脚本相同的目录中有一个名为 speedtest.py 的文件,这将覆盖实际模块。如果是这种情况,请将其重命名为其他名称。否则,如果不是这种情况,请告诉我们您是如何安装模块的、安装了哪个版本以及您拥有的 Python 版本。
  • @RandomDavis 我将 speedtest.py 移动到与脚本相同的文件夹中,感谢您的帮助。
  • 这与我所说的相反;您获得了模块并将其移动到 与您的脚本相同的目录中吗?我不知道你为什么这样做,你从哪里得到模块的文件,或者你的问题是什么。
  • @RandomDavis 我在安装 PycharmProjects\pythonProject\venv\Lib\site-packages 时得到了文件,问题是模块本身没有工作它没有给我建议什么时候我做了“速度测试”。当我尝试在没有自动完成(建议)的情况下输入“speedtest.Speedtest()”并且我的脚本名称与模块名称不同时,它给了我在问题中谈到的错误,这就是我移动模块的原因到脚本目录,因为它们的名称不同,我不必重命名它

标签: python speed-test


【解决方案1】:

我遇到了同样的错误。然后我用谷歌搜索了这个问题,最终来到了这里。后来我意识到我已经将我的python文件命名为speedtest.py。我将它重命名为其他名称(这不是任何 python 模块的名称),现在它工作得很好。

<--Screenshot-->

所以请确保这个案例。

【讨论】:

    【解决方案2】:

    我有同样的问题。我正在使用 PyCharm IDE。 当您使用 pip install speedtest 安装 speedtest 时会出现此问题 为了解决上述问题,您需要使用以下命令。

    pip install speedtest-cli
    

    但在此之前,请使用pip uninstall speedtest 卸载前一个 Screenshot to installation

    【讨论】:

      【解决方案3】:

      将 speedtest.py 文件移动到与我的脚本相同的目录后问题得到解决,并且运行良好。因此,只需确保该文件与您的 python 脚本位于同一文件夹中。

      【讨论】:

        【解决方案4】:

        碰到问题,调查了模块的内容... 看来在我的 venv 文件夹中,我得到了一个带有 EMPTY init.py 文件的模块文件夹“speedtest”,就是这样...... 文件夹旁边是带有实际代码的 speedtest.py ...... 所以删除空文件夹/模块对我有帮助...

        【讨论】:

          【解决方案5】:

          如果你同时安装了“speedtest”和“speedtest-cli”库,就会出现这个问题。

          所以首先使用“pip uninstall speedtest”命令卸载“speedtest”库。

          然后试试你的代码:

          "导入速度测试 st = speedtest.Speedtest() 打印(st.download()/1024)"

          你会得到输出

          【讨论】:

            【解决方案6】:

            您应该在 speedtest 之前使用命令 'pip uninstall speedtest' 卸载。之后,使用此代码查找下载和上传、速度和 ping:

            import speedtest
            
            test = speedtest.Speedtest()
            
            print("Loading server list...")
            test.get_servers()
            print("Choosing best server...")
            best = test.get_best_server()
            
            print(f"Found: {best['host']} located in {best['country']}")
            
            print("Performing download test...")
            download_result = test.download()
            print("Performing upload test...")
            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")
            

            【讨论】:

            • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
            猜你喜欢
            • 2021-07-09
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2021-03-07
            • 2022-08-23
            • 2020-10-10
            • 2022-08-09
            • 2019-10-13
            相关资源
            最近更新 更多