Ich versuche, ein Paket für mein Projekt zu erstellen, mit setup.py
und setuptools. Eine allgemeine Suche hat vorgeschlagen, dass Datendateien unter meinem Python-Paket platziert werden sollten.
Zum Beispiel project/src/package/data
.Installieren eines vollständigen Verzeichnisses von Datendateien
Aber meine Situation ist mehr im Einklang mit this question.
Mein Projekt besteht aus einer Python-Konsolenanwendung und einer interaktiven HTML-Anwendung. Gerade jetzt (vor setup.py
) habe ich die Konsolenanwendung die HTML-Dateien mit einem speziellen Befehl in ein bestimmtes Verzeichnis kopieren. Ich folge dieser Verzeichnisstruktur in der Quellcodeverwaltung.
project
|-+ console
| |-+ package
| |-- __init__.py, etc.
|-+ viz
|-+ css
|-+ js
|-- index.html
Ich bin mir nicht sicher, wie dieses Verhalten mit setup.py
und Ei-Dateien repliziert werden kann.
Wie kann ich sicherstellen, dass
viz
verpackt wird? Diepackage_data
Option scheint relativ zu einem Paket zu sein (was bedeutet, dassviz
sollte unter einem Paket platziert werden).Also,
package_data = {'': ['viz/*']}
ist nicht das, was ich suche.Wie erfolgt die Extraktion?
Sollte ichpkg_resources.resource_filename
verwenden, umviz
in den Cache zu bekommen, und dannshutil
, um die Dateien an den vorgesehenen Speicherort zu kopieren? Gibt es eine praktikablere Alternative?