Anaconda Python RequestsDependencyWarning:urllib3(1.22)或chardet(2.3.0)与受支持的版本不匹配

2024-04-19 06:11:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我得到一个警告,似乎没有任何其他在线资源涵盖。我已经安装了Python3.6。当我创建新的Conda环境时得到的警告是:

RequestsDependencyWarning: urllib3 (1.22) or chardet (2.3.0) doesn't match a supported version!
  RequestsDependencyWarning)

我认为这是一个pip问题,因为可能有一个相关的问题(不确定它是否真的是:How to fix urllib3 RuntimeError: Requests dependency 'urllib3' must be version >= 1.21.1, < 1.22?)。但我也有同样的问题:

 $ conda update pip
/Users/VincentLa/anaconda3/lib/python3.6/site-packages/requests/__init__.py:80: RequestsDependencyWarning: urllib3 (1.22) or chardet (2.3.0) doesn't match a supported version!
  RequestsDependencyWarning)

Tags: piporto警告环境versionmatch资源
3条回答

我也有同样的问题。

原因是您的python实例混淆了不同位置具有不同版本的多个库。

我的Ubuntu场景也会导致你的错误。

a)通过sudo apt-get install python3-requests安装的Ubuntu Python库将源代码下载到/usr/lib/python*/dist-packages

b)通过sudo -H pip3 install requests安装的Ubuntu Python库将源代码下载到/usr/local/lib/python*/dist-packages

c)操作系统路径&PYTHON路径指向/usr/lib:/usr/local/lib

d)由于python的库选择优先级,您会收到一个运行时警告。因此,它警告您,/usr/local/lib中的当前库与父操作系统库位置/usr/lib中的依赖性不兼容

对于您的特定场景,您似乎正在使用MacOS,MacOS安装了现成的-python,并通过anaconda安装了自定义的python。

为了防止冲突,我建议您在启动anaconda的python实例时删除os python path/usr/lib/python。

这将确保它只使用anaconda的python库,而不是您的操作系统。

唯一帮助我的组合是(取自http://blog.51cto.com/binuu/1948043):

pip uninstall urllib3    
pip uninstall chardet
pip install requests

所有其他的库都无法更新chardet,因为“它已经更新了”(看起来,该信息是在另一个位置为该库获取的)。

pip install --upgrade chardet

可能有帮助。

相关问题 更多 >