polib is a library to manipulate, create, modify gettext files (pot, po and mo files). You can load existing files, iterate through it's entries, add, modify entries, comments or metadata, etc... or create new po files from scratch.
polib supports out of the box any version of python ranging from 2.7 to latest 3.X version.
polib is pretty stable now and is used by many opensource projects.
The project code and bugtracker is hosted on Github.
$ pip install polib
import polib pofile = polib.pofile('/path/to/pofile.po') for entry in pofile: print(entry.msgid, entry.msgstr)