distribute and reference static content in a python package
Vince Forgetta
vincenzo.forgetta at mail.mcgill.ca
Thu Feb 2 13:42:44 EST 2012
Hi,
I have developed a python program that contains multiple python modules
and static content in the form of fonts (pil,pbm and tff files), html,
images, css and javascript.
I want to share the program with others as a python package. I have
followed the instructions at
http://guide.python-distribute.org/creation.html
I have created an identical structure (apart from directory naming) as
specified in the link, with the exception of a "static" directory within
the module directory (towelstuff in the example). Within this directory
are sub-directories named "css", "html", "images", "fonts" and "js".
TowelStuff/
bin/
run.py
CHANGES.txt
docs/
LICENSE.txt
MANIFEST.in
README.txt
setup.py
towelstuff/
__init__.py
module1.py
module2.py
static/
images/someimage.png
css/
html/
js/
fonts/
When the user install the program using "python setup.py install", the
modules (in towelstuff) are copied to the common python library path
(e.g. /usr/lib/python2.7/site-packages/), but the static content is not
(understandably).
What is common method to distribute static content, and how to I make
reference to it in my python program?
For programs in TowelStuff/bin (i.e. run.py), I currently make reference
to the static content like so:
sys.path[0] + "../towelstuff/static/images/someimage.png"
I am sure there is a more pythonic way of doing this ...
Thanks in advance for the help.
Vince
More information about the Python-list
mailing list