Python – How to fix ‘ImportError: cannot import name IncompleteRead’


When I try to install anything with pip or pip3, I get:

$ 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/", line 356, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/lib/python3/dist-packages/", line 2476, in load_entry_point
    return ep.load()
  File "/usr/lib/python3/dist-packages/", line 2190, in load
  File "/usr/lib/python3/dist-packages/pip/", line 61, in <module>
    from pip.vcs import git, mercurial, subversion, bazaar  # noqa
  File "/usr/lib/python3/dist-packages/pip/vcs/", line 9, in <module>
    from import path_to_url
  File "/usr/lib/python3/dist-packages/pip/", line 25, in <module>
    from requests.compat import IncompleteRead
ImportError: cannot import name 'IncompleteRead'

I have a Ubuntu 14.10 system.

How can I fix this problem?

Best Answer

While this previous answer might be the reason, this snipped worked for me as a solution (in Ubuntu 14.04):

First remove the package from the package manager:

# apt-get remove python-pip

And then install the latest version by side:

# easy_install pip

(thanks to @Aufziehvogel, @JunchaoGu)

Related Question