ошибка при установке пакета "hmac" в python 3.7 - PullRequest
0 голосов
/ 11 ноября 2019

при установке пакета HMAC с помощью команды pip install hmac в базовой среде

Я попытался обновить pip, инструменты установки. Но все обновлены до последней версии. но бесполезно.

pip install hmac

ошибка:

C:\WINDOWS\system32>pip install hmac
Collecting hmac
  Using cached https://files.pythonhosted.org/packages/b2/02/14b2ade413d3f34caffadfa6ed59f3769fe108a78e34931a2cdd1762cb32/hmac-20101005.tar.gz
Requirement already satisfied: setuptools in c:\programdata\anaconda3\lib\site-packages (from hmac) (41.4.0)
Collecting hashlib
  Using cached https://files.pythonhosted.org/packages/74/bb/9003d081345e9f0451884146e9ea2cff6e4cc4deac9ffd4a9ee98b318a49/hashlib-20081119.zip
    ERROR: Command errored out with exit status 1:
     command: 'c:\programdata\anaconda3\python.exe' -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\Admin\\AppData\\Local\\Temp\\pip-install-7dt9idd0\\hashlib\\setup.py'"'"'; __file__='"'"'C:\\Users\\Admin\\AppData\\Local\\Temp\\pip-install-7dt9idd0\\hashlib\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base 'C:\Users\Admin\AppData\Local\Temp\pip-install-7dt9idd0\hashlib\pip-egg-info'
         cwd: C:\Users\Admin\AppData\Local\Temp\pip-install-7dt9idd0\hashlib\
    Complete output (22 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "c:\programdata\anaconda3\lib\site-packages\setuptools\__init__.py", line 18, in <module>
        import setuptools.version
      File "c:\programdata\anaconda3\lib\site-packages\setuptools\version.py", line 1, in <module>
        import pkg_resources
      File "c:\programdata\anaconda3\lib\site-packages\pkg_resources\__init__.py", line 36, in <module>
        import email.parser
      File "c:\programdata\anaconda3\lib\email\parser.py", line 12, in <module>
        from email.feedparser import FeedParser, BytesFeedParser
      File "c:\programdata\anaconda3\lib\email\feedparser.py", line 27, in <module>
        from email._policybase import compat32
      File "c:\programdata\anaconda3\lib\email\_policybase.py", line 9, in <module>
        from email.utils import _has_surrogates
      File "c:\programdata\anaconda3\lib\email\utils.py", line 28, in <module>
        import random
      File "c:\programdata\anaconda3\lib\random.py", line 46, in <module>
        from hashlib import sha512 as _sha512
      File "C:\Users\Admin\AppData\Local\Temp\pip-install-7dt9idd0\hashlib\hashlib.py", line 80
        raise ValueError, "unsupported hash type"
                        ^
    SyntaxError: invalid syntax
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output

1 Ответ

1 голос
/ 11 ноября 2019

Синтаксическая ошибка в том, что в сообщаемой строке raise ValueError, "unsupported hash type" используется синтаксис, который не поддерживается в python 3.x, что вызывает подозрение, что модуль, который вы пытаетесь установить, написан не для python 3.x, а для 2.x

Модуль, который вы пытаетесь установить: этот .

Единственный файл в проекте pypi - с 06.10.2010, так что ему почти 9 лет. проверяя описание проекта, мы получаем:

HMAC

Это отдельная упаковка библиотеки hmac, совместимой с hashlib, включенной в Python 2.5, чтобы ее можно было использовать вместе с hashlib. backport на старых версиях Python (протестировано на 2.4). Не требуется с Python 2.5 или более поздней версии.

Так что, действительно, hmac был написан с учетом только Python 2x и никаких обновлений с тех пор. Возможно, вы захотите найти другую библиотеку или просто использовать hmac из стандартной библиотеки python , для которой не требуется никаких дополнительных установок.

...