使用pip安装时,Python包哈希不匹配

时间:2016-10-21 18:18:59

标签: python pip

我正在使用pip来安装我的所有python包但是会收到错误,如下面的跟踪所示。有什么问题,如何解决?

usr@comp:~$ pip install flask
    Collecting flask
      Using cached Flask-0.11.1-py2.py3-none-any.whl
    Collecting itsdangerous>=0.21 (from flask)
      Using cached itsdangerous-0.24.tar.gz
    Collecting click>=2.0 (from flask)
      Using cached click-6.6.tar.gz
    Collecting Werkzeug>=0.7 (from flask)
      Using cached Werkzeug-0.11.11-py2.py3-none-any.whl
    Requirement already satisfied (use --upgrade to upgrade): Jinja2>=2.4 in /usr/lib/python2.7/dist-packages (from flask)
    Requirement already satisfied (use --upgrade to upgrade): MarkupSafe in /usr/lib/python2.7/dist-packages (from Jinja2>=2.4->flask)
    THESE PACKAGES DO NOT MATCH THE HASHES FROM THE REQUIREMENTS FILE. If you have updated the package versions, please update the hashes. Otherwise, examine the package contents carefully; someone may have tampered with them.
        Werkzeug>=0.7 from https://pypi.python.org/packages/a9/5e/41f791a3f380ec50f2c4c3ef1399d9ffce6b4fe9a7f305222f014cf4fe83/Werkzeug-0.11.11-py2.py3-none-any.whl#md5=c63a21eedce9504d223ed89358c4bdc9 (from flask):
        Expected md5 c63a21eedce9504d223ed89358c4bdc9
             Got        13a168aafcc43354b6c79ef44bb0dc71

8 个答案:

答案 0 :(得分:11)

2013年有一个类似的问题(Why does pip fail with bad md5 hash for package?),我尝试过的解决方案对我有用:

SELECT tch_function , tch_part , case when tch_col_09 <> 0 then 9 when tch_col_10 <> 0 then 10 when tch_col_11 <> 0 then 11 when tch_col_12 <> 0 then 12 when tch_col_13 <> 0 then 13 when tch_col_14 <> 0 then 14 when tch_col_15 <> 0 then 15 when tch_col_16 <> 0 then 16 when tch_col_17 <> 0 then 17 when tch_col_18 <> 0 then 18 else 19 end as tch_col from your_table

由attolee提供

答案 1 :(得分:4)

.whl最初在树莓派4中对我不起作用。

发现问题是由于在安装pip期间发生了意外的网络更改/故障

我必须手动使用wget下载损坏的sudo pip install scipy-1.3.0-cp37-cp37m-linux_armv7l.whl文件

并按如下所示安装它: sudo pip install --no-cache-dir keras

之后 DEFINE view_name = 'my_results_view'; SET FEEDBACK OFF SET ECHO OFF DECLARE l_view_name VARCHAR2(40) := '&view_name'; l_query VARCHAR2(4000) := 'SELECT 1+level as id, ''TEXT''||level as text FROM DUAL '; l_where_clause VARCHAR2(4000):= ' WHERE TRUNC(1.0) = 1 CONNECT BY LEVEL < 10'; BEGIN EXECUTE IMMEDIATE 'CREATE OR REPLACE VIEW ' || l_view_name || ' AS ' || l_query || l_where_clause; END; / select * from &view_name;

然后它起作用了。

答案 2 :(得分:2)

首先,尝试升级您的 pip 然后安装库

<块引用>

python -m pip install -upgrade pip

如果它不起作用,请尝试在没有现金的情况下安装它

<块引用>

pip install --no-cache-dir the_library_name

答案 3 :(得分:1)

我在安装Panads时出错了

您需要删除缓存并重新安装。

gv$session

答案 4 :(得分:0)

您需要将pip升级到较新的版本:

使用此命令:
enter image description here

用于Mac / Linux操作系统并使用

enter image description here

用于Windows更新您的点子。然后运行命令=> pip install flask

答案 5 :(得分:0)

看起来像是缓存问题,缓存的软件包与REQUIREMENTS不同。

可能是由于上次更新中断所致。

我这样做是为了解决我的问题:

rm ~/.cache/pip -rf

答案 6 :(得分:0)

只需使用计算出的下载文件的哈希值验证指定包的已发布哈希值,即可使解决方案变得显而易见。

如果它们匹配-那么pip安装可能已损坏下载。 如果它们不匹配-则说明在发布软件包时哈希未正确发布-或-篡改了下载文件的任何人都错过了更新md5哈希的机会。

请感谢pip具有适当的下载卫生习惯。绝大多数计算机用户从未比较过他们下载和安装的软件的哈希值。

答案 7 :(得分:-1)

对于其他模块,我遇到了类似的问题。这是由网络故障引起的。我的修复程序没什么复杂,但是再次尝试安装它并成功了。