Getting ready

  1. Install geopy globally. (You cannot use a virtual environment in this case, as the user running the PostgreSQL service needs to access it on its Python path.)

In a Debian/Ubuntu box, it is as easy as typing the following:

      $ sudo pip install geopy

In Windows, you can use the following command:

      > pip install geopy
  1. If you still have not used PL/Python, verify whether your PostgreSQL server installation supports it. The Windows EDB installer should already include support, but this is not the default if you are using, for example, Ubuntu 16.04 LTS, so you most likely need to install it:
      $ sudo apt-get install postgresql-plpython-9.1
  1. Install PL/Python in the database (you could consider installing it in the template1 database; this way, every newly created database will have PL/Python support by default):
      $ psql -U me postgis_cookbook
psql (9.1.6, server 9.1.8)
Type "help" for help. postgis_cookbook=# CREATE EXTENSION plpythonu;
Alternatively, you could add PL/Python support to your database, using the createlang shell command (this is the only way if you are using PostgreSQL Version 9.1 and lower):
$ createlang plpythonu postgis_cookbook