21
votes

I'm new to Python and am trying to install this module: http://www.catonmat.net/blog/python-library-for-google-search/

There is no setup.py in the directory, but there are these files:

 BeautifulSoup.py   browser.pyc    __init__.pyc  sponsoredlinks.py
 BeautifulSoup.pyc  googlesets.py  search.py     translate.py
 browser.py         __init__.py    search.pyc

Can someone please tell me how to setup or use this module?

Thanks!

1
The simplest method: Put those files into a directory and add that directory's path to your PYTHONPATH: import sys; sys.path.append("/path/to/google_search/lib") - mechanical_meat
So really the main point of installing a Python module (with something like distutils) is so it's easily importable (and the fact that extension modules may need compilation on target machines)? - Yibo Yang

1 Answers

30
votes

The simplest way to begin using that code on your system is:

  1. put the files into a directory on your machine,
  2. add that directory's path to your PYTHONPATH

Step 2 can be accomplished from the Python REPL as follows:

import sys
sys.path.append("/home/username/google_search")

An example of how your filesystem would look:

home/
    username/
        google_search/
            BeautifulSoup.py
            browser.py
            googlesets.py
            search.py
            sponsoredlinks.py
            translate.py

Having done that, you can then import and use those modules:

>>> import search
>>> search.hey_look_we_are_calling_a_search_function()

Edit:
I should add that the above method does not permanently alter your PYTHONPATH.

This may be a good thing if you're just taking this code for a test drive.
If at some point you decide you want this code available to you at all times you will need to append an entry to your PYTHONPATH environment variable which can be found in your shell configuration file (e.g. .bashrc) or profile file (e.g. .profile).
To append to the PYTHONPATH environment variable you'll do something like:

export PYTHONPATH=$PYTHONPATH:$HOME/google_search