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

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

C:\Users\НР>pip install python-docx
Collecting python-docx
Using cached python-docx-0.8.6.tar.gz
Requirement already satisfied: lxml>=2.3.2 in c:\users\нр\appdata\local\programs
\python\python36-32\lib\site-packages (from python-docx)
Installing collected packages: python-docx
Running setup.py install for python-docx . error
Exception:
Traceback (most recent call last):
File «c:\users\нр\appdata\local\programs\python\python36-32\lib\site-packages\
pip\compat\__init__.py», line 73, in console_to_str
return s.decode(sys.__stdout__.encoding)
UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xed in position 48: invalid
continuation byte

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File «c:\users\нр\appdata\local\programs\python\python36-32\lib\site-packages\
pip\basecommand.py», line 215, in main
status = self.run(options, args)
File «c:\users\нр\appdata\local\programs\python\python36-32\lib\site-packages\
pip\commands\install.py», line 342, in run
prefix=options.prefix_path,
File «c:\users\нр\appdata\local\programs\python\python36-32\lib\site-packages\
pip\req\req_set.py», line 784, in install
**kwargs
File «c:\users\нр\appdata\local\programs\python\python36-32\lib\site-packages\
pip\req\req_install.py», line 878, in install
spinner=spinner,
File «c:\users\нр\appdata\local\programs\python\python36-32\lib\site-packages\
pip\utils\__init__.py», line 676, in call_subprocess
line = console_to_str(proc.stdout.readline())
File «c:\users\нр\appdata\local\programs\python\python36-32\lib\site-packages\
pip\compat\__init__.py», line 75, in console_to_str
return s.decode(‘utf_8’)
UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xed in position 48: invalid
continuation byte

в чём беда? стоит windows 8. Заранее спасибо.

При установке зависимостей пакета вылазит ошибка «error: Unable to find vcvarsall.bat»
вообщем система win7, python 2.7.3, при установке в virtualenv pillow с помощью pip’а.

При установке пакета pytorch выдает ошибку
С сайта взял ссылку и ввел команду pip3 install https://download.pytorch.org/whl/cpu/torch-1.

Возможно ли при импорте в модуль пакета подняться выше пакета?
Есть скрипты .py, лежащие на одном уровне(в одном каталоге) и есть пакет модулей, лежащий на том же.

Читайте также:  Python json schema required

Ошибка при установке
Добрый вечер. Решил изучать питон и первый подводный камень встретил сразу же при установке. При.

Ошибка при установке chemlab
running build_ext skipping ‘chemlab/libs\ckdtree.c’ Cython extension (up-to-date) .

Источник

Решение проблем с модулями и пакетами Python

Я с завидной регулярностью сталкиваюсь со всевозможными ошибками, так или иначе связанными с модулями Python. Существует огромное количество разнообразных модулей Python, которые разработчики активно используют, но далеко не всегда заботятся об установке зависимостей. Некоторые даже не удосуживаются их документировать. Параллельно существует две мажорные версии Python: 2 и 3. В разных дистрибутивах отдано предпочтение одной или другой версии, по этой причине самостоятельно установленную программу в зависимости от дистрибутива нужно при запуске предварять python или python2/python3. Например:

Причём обычно не происходит никаких проверок и угадали ли вы с выбором версии или нет вы узнаете только при появлении первых ошибок, вызванных неправильным синтаксисом программного кода для данной версии.

Также прибавляет путаницу то, что модули можно установить как из стандартного репозитория дистрибутивов, так и с помощью pip (инструмент для установки пакетов Python).

Цель этой заметки — рассмотреть некоторые характерные проблемы модулей Python. Все возможные ошибки вряд ли удастся охватить, но описанное здесь должно помочь понять, в каком примерно направлении двигаться.

Отсутствие модуля Python

Большинство ошибок модулей Python начинаются со строк:

Exception: Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/………. ……………… ………………

В них трудно разобраться, поэтому поищите фразы вида:

  • ModuleNotFoundError: No module named
  • No module named
  • ImportError: No module named

За ними следует название модуля.

Поищите по указанному имени в системном репозитории, или попробуйте установить командой вида:

Пакет Python установлен, но программа его не видит

Причина может быть в том, что вы установили модуль для другой версии. Например, программа написана на Python3, а вы установили модуль с этим же названием, но написанный на Python2. В этом случае он не будет существовать для программы. Поэтому нужно правильно указывать номер версии.

Команда pip также имеет свои две версии: pip2 и pip3. Если версия не указана, то это означает, что используется какая-то из двух указанных (2 или 3) версий, которая является основной в системе. Например, сейчас в Debian и производных по умолчанию основной версией Python является вторая. Поэтому в репозитории есть два пакета: python-pip (вторая версия) и python3-pip (третья).

В Arch Linux и производных по умолчанию основной версией является третья, поэтому в репозиториях присутствует пакет python-pip (третья версия) и python2-pip (вторая).

Это же самое относится к пакетам Python и самому Python: если версия не указана, значит имеется ввиду основная для вашего дистрибутива версия. По этой причине многие пакеты в репозитории присутствуют с двумя очень похожими названиями.

Установлена новая версия модуля, но программа видит старую версию

Я несколько раз сталкивался с подобными необъяснимыми ошибками.

Иногда помогает удаление модуля командой вида:

sudo pip2 uninstall модуль

Также попробуйте удалить его используя системный менеджер пакетов.

Если модуль вам нужен, попробуйте вновь установить его и проверьте, решило ли это проблему.

Если проблема не решена, то удалите все файлы модуля, обычно они расположены в папках вида:

Ошибки с фразой «AttributeError: ‘NoneType’ object has no attribute»

Ошибки, в которых присутствует слово AttributeError, NoneType, object has no attribute обычно вызваны не отсутствием модуля, а тем, что модуль не получил ожидаемого аргумента, либо получил неправильное число аргументов. Было бы правильнее сказать, что ошибка вызвана недостаточной проверкой данных и отсутствием перехвата исключений (то есть программа плохо написана).

В этих случаях обычно ничего не требуется дополнительно устанавливать. В моей практике частыми случаями таких ошибок является обращение программы к определённому сайту, но сайт может быть недоступен, либо API ключ больше недействителен, либо программа не получила ожидаемые данные по другим причинам. Также программа может обращаться к другой программе, но из-за ошибки в ней получит не тот результат, который ожидала, и уже это вызывает приведённые выше ошибки, которые мы видим.

Опять же, хорошо написанная программа в этом случае должна вернуть что-то вроде «информация не загружена», «работа программы N завершилась ошибкой» и так далее. Как правило, нужно разбираться с причиной самой первой проблемы или обращаться к разработчику.

Модуль установлен, но при обновлении или обращении к нему появляется ошибки

Это самая экзотическая ошибка, которая вызвана, видимо, повреждением файлов пакета. К примеру, при попытке обновления я получал ошибку:

Requirement already satisfied: networkx in /usr/lib/python2.7/site-packages (2.1) Exception: Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/pip/_internal/basecommand.py", line 141, in main status = self.run(options, args) File "/usr/lib/python2.7/site-packages/pip/_internal/commands/install.py", line 299, in run resolver.resolve(requirement_set) File "/usr/lib/python2.7/site-packages/pip/_internal/resolve.py", line 102, in resolve self._resolve_one(requirement_set, req) File "/usr/lib/python2.7/site-packages/pip/_internal/resolve.py", line 261, in _resolve_one check_dist_requires_python(dist) File "/usr/lib/python2.7/site-packages/pip/_internal/utils/packaging.py", line 46, in check_dist_requires_python feed_parser.feed(metadata) File "/usr/lib/python2.7/email/feedparser.py", line 177, in feed self._input.push(data) File "/usr/lib/python2.7/email/feedparser.py", line 99, in push parts = data.splitlines(True) AttributeError: 'NoneType' object has no attribute 'splitlines'

При этом сам модуль установлен как следует из самой первой строки.

Проблема может решиться удалением всех файлов пакета (с помощью rm) и затем повторной установки.

К примеру в рассматриваемом случае, удаление:

rm -rf /usr/lib/python2.7/site-packages/networkx-2.1-py2.7.egg-info/
pip2 install networkx Collecting networkx Downloading https://files.pythonhosted.org/packages/11/42/f951cc6838a4dff6ce57211c4d7f8444809ccbe2134179950301e5c4c83c/networkx-2.1.zip (1.6MB) 100% |████████████████████████████████| 1.6MB 2.9MB/s Requirement already satisfied: decorator>=4.1.0 in /usr/lib/python2.7/site-packages (from networkx) (4.3.0) Installing collected packages: networkx Running setup.py install for networkx . done Successfully installed networkx-2.1

После этого проблема с модулем исчезла.

Заключение

Пожалуй, это далеко не полный «справочник ошибок Python», но если вы можете сориентироваться, какого рода ошибка у вас возникла:

  • отсутствует модуль
  • модуль неправильной версии
  • модуль повреждён
  • внешняя причина — программа не получила ожидаемые данные

Так вот, если вы хотя бы примерно поняли главную причину, то вам будет проще понять, в каком направлении двигаться для её решения.

Источник

Что делать если pip не устанавливает пакеты

Здравствуйте,я хотел установить модули для python’а но pip выдает ошибки,как востановить работоспособность pip?

Идентифицировать и устранить указанную в ошибке проблему пробовал?

не получилось устранить ошибку по поиску в нете. вот сама ошибка: Traceback (most recent call last): File «/usr/bin/pip», line 6, in from pkg_resources import load_entry_point ModuleNotFoundError: No module named ‘pkg_resources’

Это модуль из состава setuptools. Есть идеи, как и чем ты сломал setuptools? Переустановить можешь?

идей нет,сам переставить не смогу.

при установке программ python выходят такие ошибки: предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/__pycache__/easy_install.cpython-37.opt-1.pyc предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/__pycache__/easy_install.cpython-37.pyc предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/easy_install.py предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/pkg_resources/ предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/pkg_resources/__init__.py предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/pkg_resources/__pycache__/ предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/pkg_resources/__pycache__/__init__.cpython-37.opt-1.pyc предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/pkg_resources/__pycache__/__init__.cpython-37.pyc предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/pkg_resources/__pycache__/py31compat.cpython-37.opt-1.pyc предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/pkg_resources/__pycache__/py31compat.cpython-37.pyc предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/pkg_resources/py31compat.py предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/setuptools-41.2.0-py3.7.egg-info/ предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/setuptools-41.2.0-py3.7.egg-info/PKG-INFO предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/setuptools-41.2.0-py3.7.egg-info/SOURCES.txt предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/setuptools-41.2.0-py3.7.egg-info/dependency_links.txt предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/setuptools-41.2.0-py3.7.egg-info/entry_points.txt предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/setuptools-41.2.0-py3.7.egg-info/requires.txt предупреждение: не удалось получить информацию о файле для usr/lib/python3.7/site-packages/setuptools-41.2.0-py3.7.egg-info/top_level.txt предупреждение: не удалось получить информацию о файле для

Ищи, как в арче переустанавливать пакеты и переустанавливай setuptools.

В большинстве дистрибутивов Linux pip можно безопасно использовать только в virtualenv или в крайнем случае от пользователя с –user. Запуск pip от root за пределами virtualenv — верный способ заработать конфликты с системным менеджером пакетов. Так что переустанавливай arch полностью.

Проблема решается очень просто. Могу рассказать как.

Источник

Оцените статью