Ahoj, pokud chceš parsovat XML v Pythonu, doporučuji knihovnu lxml, která je asi tím nejrychlejším a nejvybavenějším nástrojem, jaký máš pro tento úkol k dispozici. XML, které chceš parsovat, by mělo být validní - tzn. být přesně podle specifikace, bez chyb, musí být well-formed. Další věc je kódování souboru - pokud je XML uloženo v utf-8, je vše v pořádku a mělo by se ti povést jej přečíst. Pokud je soubor v jiném kódování, MUSÍ mít na začátku hlavičku (XML deklaraci) s definovaným kódováním, např.
<?xml version="1.0" encoding="winodws-1250" ?> Pokud tam hlavička není, předpokládá se UTF-8. Je-li v tomto nějaký rozkol, parser spadne na kolizních znacích. Jestli máš nevalidní XML a stejně ho potřebuješ zparsovat, tak to je pak už trochu vyšší dívčí - nejjednodušeji to jde řešit asi tak, že místo XML parseru použiješ nějaký HTML parser, který je benevolentnější (byť, pozor, v detailech není s XML parserem úplně zaměnitelný), např. http://lxml.de/lxmlhtml.html Více ti asi bez znalosti toho XML neporadím. H 2013/7/15 <michal.pet...@gmail.com> > Zdravím. > Píšu v pythonu parser XML. Při parsování některých XML však dojde k chybě: > xml.parsers.expat.ExpatError: not well-formed (invalid token): line 3270, > column 529 > > Dočetl jsem se že se může jednat o problém pokud XML obsahuje unicode > znaky. Už jsem ale nenašel žádné informace jak tento problém efektivně > řešit. > > Máte s tímto někdo zkušenosti ? Mohl by jste mi prosím někdo poradit jak > bych toto mohl řešit? > > Pro parsování používám ElementTree, python 2.7 > > Děkuji > MP > _______________________________________________ > Python mailing list > Python@py.cz > http://www.py.cz/mailman/listinfo/python >
_______________________________________________ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python