Ошибки при установке пакетов python

Я не могу установить пакеты Python как из pip, так и из easy_install. Постоянно выскакивает какая-то абсурдная ошибка. Пожалуйста, помогите исправить это.

Я получаю те же ошибки при использовании python setup.py install.

Ошибка при установке django-memcached

C:\Users\Praful\Desktop\django-redis-master>easy_install django-memcached
Traceback (most recent call last):
  File "C:\Python27\Scripts\easy_install-script.py", line 9, in <module>
    load_entry_point('distribute==0.6.27', 'console_scripts', 'easy_install')()
  File "C:\Python27\lib\site-packages\distribute-0.6.27-py2.7.egg\setuptools\com
mand\easy_install.py", line 1915, in main
    with_ei_usage(lambda:
  File "C:\Python27\lib\site-packages\distribute-0.6.27-py2.7.egg\setuptools\com
mand\easy_install.py", line 1896, in with_ei_usage
    return f()
  File "C:\Python27\lib\site-packages\distribute-0.6.27-py2.7.egg\setuptools\com
mand\easy_install.py", line 1919, in <lambda>
    distclass=DistributionWithoutHelpCommands, **kw
  File "C:\Python27\lib\distutils\core.py", line 112, in setup
    _setup_distribution = dist = klass(attrs)
  File "C:\Python27\lib\site-packages\distribute-0.6.27-py2.7.egg\setuptools\dis
t.py", line 222, in __init__
    for ep in pkg_resources.iter_entry_points('distutils.setup_keywords'):
  File "C:\Python27\lib\site-packages\distribute-0.6.27-py2.7.egg\pkg_resources.
py", line 486, in iter_entry_points
    entries = dist.get_entry_map(group)
  File "C:\Python27\lib\site-packages\distribute-0.6.27-py2.7.egg\pkg_resources.
py", line 2315, in get_entry_map
    self._get_metadata('entry_points.txt'), self
  File "C:\Python27\lib\site-packages\distribute-0.6.27-py2.7.egg\pkg_resources.
py", line 2101, in parse_map
    raise ValueError("Entry points must be listed in groups")
ValueError: Entry points must be listed in groups

Ошибка при установке python-memcache

C:\Users\Praful\Desktop\mem>python setup.py install
Traceback (most recent call last):
  File "setup.py", line 24, in <module>
    "Topic :: Software Development :: Libraries :: Python Modules",
  File "C:\Python27\lib\distutils\core.py", line 112, in setup
    _setup_distribution = dist = klass(attrs)
  File "C:\Python27\lib\site-packages\distribute-0.6.27-py2.7.egg\setuptools\dis
t.py", line 222, in __init__
    for ep in pkg_resources.iter_entry_points('distutils.setup_keywords'):
  File "C:\Python27\lib\site-packages\distribute-0.6.27-py2.7.egg\pkg_resources.
py", line 486, in iter_entry_points
    entries = dist.get_entry_map(group)
  File "C:\Python27\lib\site-packages\distribute-0.6.27-py2.7.egg\pkg_resources.
py", line 2315, in get_entry_map
    self._get_metadata('entry_points.txt'), self
  File "C:\Python27\lib\site-packages\distribute-0.6.27-py2.7.egg\pkg_resources.
py", line 2101, in parse_map
    raise ValueError("Entry points must be listed in groups")
ValueError: Entry points must be listed in groups

person PythonEnthusiast    schedule 01.08.2013    source источник


Ответы (5)


  1. Найдите get_entry_map(self, group=None): в python\Lib\sitepackages\pkg_resources\__init__.py. Вставить после print self.egg_info
  2. Запустите python setup.py и посмотрите на последний распечатанный - сломанный пакет. Запомните его, чтобы позже установить снова. Удалите папку сломанного пакета и папку broken_package-version.dist-info. Запустите снова пункт 2, пока ошибка не исчезнет.
  3. Удалить изменения из пункта 1.
  4. python setup.py install 'broken_package'
person CTPaHHuK-HEbA    schedule 24.09.2015

Эта ошибка произошла со мной при установке любого пакета. Мое решение заключалось в том, чтобы перейти к моему файловому проводнику, ввести в строке пути %appdata%, перейти в папку Python и удалить все внутри.

person NotACyborg    schedule 25.08.2020

Я обнаружил, что та же проблема была вызвана ошибочным вводом файла entry_points.txt в одном из моих установленных яиц.

Может быть довольно сложно отследить, какой из них, если их много.

Мне удалось найти этот маленький ba#@!"d, создав и запустив setup.py для фиктивного пакета:

setup.py

from setuptools import setup, find_packages
setup(
    name = "IWillFindYou",
    version = "0.1",
    packages = find_packages()
)

запустить это в режиме отладки будет указывать на эту строку в pkg_resources.py

    def parse_map(cls, data, dist=None):
        [...]
            raise ValueError("Entry points must be listed in groups")

если вы вернетесь к трассировке стека, то увидите, что здесь вызывается parse_map:

def get_entry_map(self, group=None):
    [...]
        ep_map = self._ep_map = EntryPoint.parse_map(
            self._get_metadata('entry_points.txt'), self
        )

оценка self.egg_info укажет на ваше злое яйцо, чтобы вы могли взглянуть на файл entry_points.txt.

Если вы плохо разбираетесь в отладчике, вы можете попробовать поместить print self.egg_info в get_entry_map и посмотреть, что напечатано последним.

person FxIII    schedule 12.11.2014

Мой подход к решению

Платформа: Windows 10, ConEmu-Maximus5

  • #P2#
    #P3# #P4# #P5#
  • закрыть терминал/командную строку

  • откройте терминал/командную строку и перейдите в папку проекта

  • повторный запуск poetry install

Я надеюсь, что это помогает...

Как я столкнулся с ошибкой

Это был мой первый раз, когда я использовал поэзию, при запуске poetry install процесс был прерван. повторный запуск команды выдал ошибку.

person spaceofmiah    schedule 07.05.2020

Возможно проблема с distribute. Я бы рекомендовал переустановить Python.

person AndrewS    schedule 01.08.2013