[Python-de] py2exe und xml.sax

Henning.Ramm at mediapro-gmbh.de Henning.Ramm at mediapro-gmbh.de
Fre Jul 1 00:58:07 CEST 2005


Ahoi!

Wenn ich meine Programme mit py2exe behandle, laufen sie nachher nicht, weil mein Config-Modul eine XML-Datei einliest.

Der Traceback sieht so aus:
  ...
  File "xml\sax\__init__.pyo", line 28, in parse
  File "xml\sax\sax2exts.pyo", line 37, in make_parser
  File "xml\sax\saxexts.pyo", line 77, in make_parser
xml.sax._exceptions.SAXReaderNotAvailable: No parsers found

Mein Codeschnipsel so:

import xml.sax, pyexpat
XMLhdl = ConfigXMLHandler() # ist ein xml.sax.ContentHandler
xml.sax.parse(filename, XMLhdl)

Der einzige installierte Parser ist expat, und xml.sax.parsers.expat import nur pyexpat, also dachte ich, es würde helfen, pyexpat zu importieren, damit py2exe ihn mitnimmt. Reicht aber offenbar nicht. Einbinden von xml.sax.parsers.expat auch nicht.

In der Doku zu xml.sax steht, dass ich make_parser(['expat']) verwenden könnte (und ich hoffe, dass das für py2exe genug wäre) - aber wie/wo passt das in meinen Code? Ich kann ja bei parse keinen Parser angeben, oder? 

Was muss ich tun?


Grüße vom Südsee!
Henning Hraban Ramm
Südkurier Medienhaus / MediaPro
Systembetreuung / Systementwicklung