Frage zu einem Prototypen eines mini-Plugin Systems

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
EnTeQuAk
User
Beiträge: 986
Registriert: Freitag 21. Juli 2006, 15:03
Wohnort: Berlin
Kontaktdaten:

Montag 16. Juli 2007, 09:04

Hallo alle zusammen.

Ich bastel zur Zeit daran, eines meiner Programme (Globby) etwas mehr zu modularisieren.

Angefangen habe ich dabei, das es nun automatisch sich alle Markup-Parser sucht und in eine gewisse Variable speichert.

Dies geschieht zur Zeit wiefolgt: http://trac.webshox.org/browser/globby/ ... t__.py#L73

Die Funktione 'get_all_processors' sammelt also im Verzeichnis 'processors' alle Module ein und importiert alle Parser, die in __all__ drinne stehen.

Nun fänd ich es aber schön, wenn man den Parser nicht unbedingt in __all__ eintragen muss.

Meine Idee währe, das Modul mittels 'dir(modulename)' abzusuchen und zu schauen, ob ein Parser von 'BaseProcessor' erbt.

Habt ihr da eventuell noch ein paar Vorschläge?

Ja, ich weiß, das ist alles nur minimalistische Kosmetik. Aber mich würde das mal interessieren.


MfG EnTeQuAk
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Montag 16. Juli 2007, 10:30

Hast dir den Thread schon angesehen?
http://www.python-forum.de/topic-3129.html
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

Montag 16. Juli 2007, 10:42

Was spricht dagegen, mittels __import__ ``BaseProcessor`` zu importieren und auftretende ImportErrors zu ignorieren?
Antworten