使用python venv时出现ValueError

如何解决使用python venv时出现ValueError

我目前正在尝试使用 Python 中的 API 密钥连接到我的 DropBox 帐户。当我不使用虚拟环境运行它时,我可以从下面的代码获取我的个人资料信息。

import dropBox

d = dropBox.DropBox("myAPIkey")
    
print(d.users_get_current_account())

但是当我使用 python venv 运行代码时,出现此错误

Traceback (most recent call last):
  File "c:\users\user\appdata\local\programs\python\python38-32\lib\site-packages\urllib3\util\timeout.py",line 142,in _validate_timeout
    float(value)
TypeError: float() argument must be a string or a number,not 'Timeout'

During handling of the above exception,another exception occurred:

Traceback (most recent call last):
      File "d:/Desktop/FYP/FYP-TheBoyes/dropBox_tester.py",line 8,in <module>
        print(d.users_get_current_account())
      File "c:\users\user\appdata\local\programs\python\python38-32\lib\site-packages\dropBox\base.py",line 5216,in users_get_current_account
        r = self.request(
      File "c:\users\user\appdata\local\programs\python\python38-32\lib\site-packages\dropBox\dropBox_client.py",line 321,in request
        res = self.request_json_string_with_retry(host,File "c:\users\user\appdata\local\programs\python\python38-32\lib\site-packages\dropBox\dropBox_client.py",line 476,in request_json_string_with_retry
        return self.request_json_string(host,line 588,in request_json_string
        r = self._session.post(url,File "d:\Desktop\FYP\FYP-Django\venv\lib\site-packages\requests\sessions.py",line 522,in post
        return self.request('POST',url,data=data,json=json,**kwargs)
      File "d:\Desktop\FYP\FYP-Django\venv\lib\site-packages\requests\sessions.py",line 475,in request
        resp = self.send(prep,**send_kwargs)
      File "d:\Desktop\FYP\FYP-Django\venv\lib\site-packages\requests\sessions.py",line 596,in send
        r = adapter.send(request,**kwargs)
      File "d:\Desktop\FYP\FYP-Django\venv\lib\site-packages\requests\adapters.py",line 413,in send
        resp = conn.urlopen(
      File "c:\users\user\appdata\local\programs\python\python38-32\lib\site-packages\urllib3\connectionpool.py",line 687,in urlopen
        timeout_obj = self._get_timeout(timeout)
      File "c:\users\user\appdata\local\programs\python\python38-32\lib\site-packages\urllib3\connectionpool.py",line 330,in _get_timeout
        return Timeout.from_float(timeout)
      File "c:\users\user\appdata\local\programs\python\python38-32\lib\site-packages\urllib3\util\timeout.py",line 179,in from_float
        return Timeout(read=timeout,connect=timeout)
      File "c:\users\user\appdata\local\programs\python\python38-32\lib\site-packages\urllib3\util\timeout.py",line 103,in __init__
        self._connect = self._validate_timeout(connect,"connect")
      File "c:\users\user\appdata\local\programs\python\python38-32\lib\site-packages\urllib3\util\timeout.py",line 144,in _validate_timeout
        raise ValueError(
    ValueError: Timeout value connect was Timeout(connect=100,read=100,total=None),but it must be an int,float or None.

有什么办法可以让这段代码在我的 python venv 中运行吗?

解决方法

我想您正在运行 dropbox-sdk-python python 包。
这种错误似乎与此 thread 中解释的依赖项版本有关。

因此请确保所有依赖项都具有基于 requirements.txt 文件的正确版本。

要检查所有已安装依赖项的版本,请在激活 virtualenv 的情况下运行以下命令。

pip freeze
,

您确定您使用的是 venv 吗?
如果是,请尝试在没有 venv 的情况下运行它。
并保留您的 API在一个单独的变量中。
然后尝试使用 pip uninstall dropbox 卸载 Dropbox,然后通过 pip install dropbox 安装它。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?