Reportlab. There is an open source version, and a paid version which adds the Report Markup Language (an alternative method of defining your document).
There is also http://appyframework.org/pod.html
which takes a LibreOffice or OpenOffice document as template and can generate pdf, rtf, odt ...
To generate pdf it requires a headless OOo on some server.
Documentation is concise but relatively complete.
http://appyframework.org/podWritingTemplates.html
If you need advice, the author is rather helpful.