"ImportError: No module named httplib2" even after installation

91,693

Solution 1

added this to .bash_profile export PATH=/usr/local/bin:$PATH

then got:

$ which -a python
/usr/local/bin/python
/usr/bin/python
/usr/local/bin/python
$ python
Python 2.7.6 (default, Dec 27 2013, 14:07:24) 
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.2.79)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import httplib2
>>> 

can't say for sure why pip was installing to /usr/local instead of system default, but now they're the same, so it's working for now.

Solution 2

If there are multiple Python instances (2 & 3), try different pip, for example:

Python 2:

pip2 install httplib2 --upgrade

Python 3:

pip3 install httplib2 --upgrade

To check what's installed and where, try:

pip list
pip2 list
pip3 list

Then make sure you're using the right Python instance (as suggested in the other answer).

Solution 3

On Ubuntu:

Installing the library using the Ubuntu package manager fixed my issue:

sudo apt-get install python-httplib2

Solution 4

I faced similar problems on Windows 7. Here is how I solved it:

  1. Install Python: Simply download Python and follow the installation instructions of the wizard.
  2. Now, Python should be accessible from the command line. However, in my case, calling

    py script.py resulted in the the same error: "ImportError: No module named httplib2"

  3. I then had to add the Python and Pip installation paths to the "Path" environment variable in order to install the httplib2 module and then execute the script without failure. I followed the instructions provided here.

  4. Then I was able to execute

    pip3 install httplib2 --upgrade

  5. In the end I successfully managed to execute the script containing the httplib2 import statement.

Share:
91,693

Related videos on Youtube

Ben
Author by

Ben

If you're on a quest, it helps to have a wizard. I'm also a useful ally in matters concerning the management of realms, extra-dimensional exploration, research and development of enchantments, potions, summonings, etc.

Updated on July 24, 2020

Comments

  • Ben
    Ben almost 3 years

    I'm having a hard time understanding why I get ImportError: No module named httplib2 after making sure httplib2 is installed. See below:

    $ which -a python
    /usr/bin/python
    /usr/local/bin/python 
    $ pip -V
    pip 1.4.1 from /usr/local/lib/python2.7/site-packages/pip-1.4.1-py2.7.egg (python 2.7
    $ pip list
    google-api-python-client (1.2)
    httplib2 (0.8)
    pip (1.4.1)
    pudb (2013.5.1)
    Pygments (1.6)
    setuptools (1.3.2)
    wsgiref (0.1.2)
    $ pip install httplib2
    Requirement already satisfied (use --upgrade to upgrade): httplib2 in /usr/local/lib/python2.7/site-packages
    Cleaning up...
    $ python
    Python 2.7.5 (default, Sep 12 2013, 21:33:34) 
    [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import httplib2
    Traceback (most recent call last):
     File "<stdin>", line 1, in <module>
     ImportError: No module named httplib2
    

    I've also done

    $ find / | grep httplib2
    /usr/local/lib/python2.7/site-packages/httplib2
    /usr/local/lib/python2.7/site-packages/httplib2/__init__.py
    [... edited for brevity]
    

    PLUMBING! >shakes fist at heavens<

    • poke
      poke about 9 years
      Can you do a which python too?
    • Ben
      Ben about 9 years
      ahhh... i seeeeeeee....
    • Ben
      Ben about 9 years
      well, looks like pip is installing my libraries for the second of the python installations, so when I run python, it doesn't find the installed modules. evidenced by $ /usr/local/bin/python Python 2.7.6 (default, Dec 27 2013, 14:07:24) [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.2.79)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import httplib >>>