Как исправить 'ImportError: не могу импортировать имя IncompleteRead'?
Когда я пытаюсь установить что-либо с помощью pip
или pip3
, я получаю:
$ sudo pip3 install python3-tk
Traceback (most recent call last):
File "/usr/bin/pip3", line 9, in <module>
load_entry_point('pip==1.5.6', 'console_scripts', 'pip3')()
File "/usr/lib/python3/dist-packages/pkg_resources.py", line 356, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/usr/lib/python3/dist-packages/pkg_resources.py", line 2476, in load_entry_point
return ep.load()
File "/usr/lib/python3/dist-packages/pkg_resources.py", line 2190, in load
['__name__'])
File "/usr/lib/python3/dist-packages/pip/__init__.py", line 61, in <module>
from pip.vcs import git, mercurial, subversion, bazaar # noqa
File "/usr/lib/python3/dist-packages/pip/vcs/mercurial.py", line 9, in <module>
from pip.download import path_to_url
File "/usr/lib/python3/dist-packages/pip/download.py", line 25, in <module>
from requests.compat import IncompleteRead
ImportError: cannot import name 'IncompleteRead'
У меня есть система Ubuntu 14.10.
Как я могу исправить эту проблему?
Ответы
Ответ 1
В то время как этот предыдущий ответ мог быть причиной, это отрезало для меня как решение (в Ubuntu 14.04
):
Сначала удалите пакет из диспетчера пакетов:
# apt-get remove python-pip
И затем установите последнюю версию:
# easy_install pip
(благодаря @Aufziehvogel, @JunchaoGu)
Ответ 2
Эта проблема вызвана несоответствием между установкой вашего пакета и установкой ваших запросов.
По запросу удалена версия 2.4.0 requests.compat.IncompleteRead
. Старые версии пипса, например. с июля 2014 года, все еще полагался на IncompleteRead
. В текущей версии пипа, импорт IncompleteRead
был удален.
Таким образом, виноват либо:
- для быстрого удаления общедоступного API.
- Ubuntu для обновления ПП слишком медленно
Вы можете решить эту проблему, либо обновив pip через Ubuntu (если есть более новая версия), либо установив pip в сторону Ubuntu.
Ответ 3
Для фиксации pip3 (работает на Ubuntu 14.10):
easy_install3 -U pip
Ответ 4
Или вы можете удалить все requests
.
Например:
-
rm -rf /usr/local/lib/python2.7/dist-packages/requests*
Ответ 5
В Ubuntu 14.04 я решил это, используя bootstrap установки script, как описано в документации
wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
Это решение OK для среды разработки.
Ответ 6
Проблема заключается в модуле Python requests
. Его можно зафиксировать на
$ sudo apt-get purge python-requests
[now requests and pip gets deinstalled]
$ sudo apt-get install python-requests python-pip
Если у вас есть эта проблема с Python 3, вам нужно написать python3
вместо python
.
Ответ 7
Это должно сработать для вас. Следуйте этим простым шагам.
Сначала удалите уже установленный пипс, чтобы он не вызывал никаких ошибок.
Открыть терминал.
Тип: sudo apt-get удалить python-pip
Он удаляет уже установленную пишу.
Метод-1
Шаг: 1 sudo easy_install -U pip
Он установит последнюю версию pip.
И вернет свой адрес: Установлен /usr/local/lib/python 2.7/dist-packages/pip-6.1.1-py2.7.egg
или
Метод-2
Шаг: 1 перейдите к этой ссылке.
Шаг: 2 Щелкните правой кнопкой мыши → Сохранить как.. с именем get-pip.py.
Шаг: 3 используйте: cd, чтобы перейти в тот же каталог, что и ваш файл get-pip.py
Шаг: 4: sudo python get-pip.py
Он установит последнюю версию pip.
или
Метод-3
Шаг: 1: sudo apt-get install python-pip
Он установит последнюю версию pip.
Ответ 8
Просто запуск easy_install -U pip
разрешил мою проблему.
Ответ 9
Моя версия pip на ubuntu предлагает:
pip install --upgrade pip
Ответ 10
Проверьте, есть ли у вас более старая версия requests
, сидящая в вашем ~/.local/lib/python2.7/site-packages/
, и удалите ее, если это так (измените путь, чтобы отразить вашу версию python). Это решило проблему для меня.
Ответ 11
В Windows это работало из командной строки:
- Удалить
C:\Python27\Lib\site-packages\requests*
-
easy_install requests==2.3
-
pip install --upgrade pip
-
pip install --upgrade requests
Ответ 12
Я попытался с каждым ответом ниже, но не смог его сделать.
Сделал ли это и работал
sudo apt-get purge python-virtualenv
sudo pip install pip -U
После этого я только что установил virtualenv с pip
sudo pip install virtualenv
Я построил virtualenv, над которым я работал, и
пакет был легко установлен.
Войдите в virtualenv, используя source /bin/activate
и попробуйте установить пакет, например:
pip install terminado
Это сработало для меня, хотя я использовал python2.7, а не python3
Ответ 13
Проверьте, есть ли в интерпретаторе python один из окон терминала. Если это убьет его и попробуйте sudo pip
, который работал у меня.
Ответ 14
- sudo apt-get удалить python-pip
- запросы sudo easy_install == 2.3.0
- sudo apt-get install python-pip
Ответ 15
Вы можете загружать последние пакеты вручную с этих страниц:
Затем установите его, запустив dpkg
:
dpkg -i *.deb
Ответ 16
Для CentOS я использовал это, и он работал, пожалуйста, используйте следующие команды:
sudo pip uninstall requests
sudo pip uninstall urllib3
sudo yum remove python-urllib3
sudo yum remove python-requests
(убедитесь, что все эти библиотеки удалены)
sudo yum install python-urllib3
sudo yum install python-requests