how to use the xml.sax.drivers2 parser to parse é

Asked by Mathieu Agopian on 2010-12-29

Hello (again ;),

following the tip in http://appyframework.org/podWritingAdvancedTemplates.html, i installed pyxml, and can now properly import xml.sax.drivers2 in my python shell.

However, if i try a renderer.renderXhtml('é'), i still have an error :

SAXParseException: <unknown>:1:18: undefined entity

I also tried with &nbsp; and &egrave;

Is there something specific i need to do to indeed have POD use this xml.sax.drivers2 ?

BR

Mathieu

Question information

Language:
English Edit question
Status:
Solved
For:
Appy Edit question
Assignee:
No assignee Edit question
Solved by:
Gaëtan Delannay
Solved:
2010-12-29
Last query:
2010-12-29
Last reply:
2010-12-29

Hello,
No, normally, if your Python interpreter finds package "xml.sax.drivers2", it uses it instead of the standard expat XML parser. Are you sure "xml.sax.drivers2" is available to the same Python interpreter that runs POD?
Gaetan

I would say the problem is you don't use the last appy.pod version (?)

Well,

first of all, thanks a LOT for your very quick answer ;)

It seems indeed both my questions where due to an outdated version of appy.pod :( I did install it via "pip install appy.pod", which is very convenient, but does take it from pypi, where it is very old!

Thanks again, and truly sorry for the time spent on this (false) issue

Best regards

Mathieu

P.S: just FYI, once the new appy.pod package was installed, i tried my code again, and found some strange "<unknown>:1:0: Unsupported encoding 'ucs-4-le'" errors, and "SAXParseException: <unknown>:1:1: Not a valid name" errors when trying the following expression:

do text from xhtml(someunicodestring)

I all resolved when i did "do text from xhtml(someunicodestring.encode('utf8')"

Maybe this will help someone one day ;)

Thanks Gaëtan Delannay, that solved my question.