[python] xml parsování
Petr Přikryl
prikryl na atlas.cz
Úterý Srpen 13 12:12:10 CEST 2019
Pro jednodušší xpath (než implementuje lxml) by měl stačit standardní modul xml.etree.ElementTree (https://docs.python.org/3/library/xml.etree.elementtree.html#module-xml.etree.ElementTree).
Pro reakci jen na některé tagy s postupným zpracováním možná XMLPullParser ze stejného modulu, nebo XMLParser (https://docs.python.org/3/library/xml.etree.elementtree.html#pull-api-for-non-blocking-parsing), ale nemám vyzkoušené, jak se to chová u vadných souborů.
Petr
______________________________________________________________
> Od: "Ondrej Beranek" <rainbof na gmail.com>
> Komu: "Konference PyCZ" <python na py.cz>
> Datum: 13.08.2019 11:30
> Předmět: Re: [python] xml parsování
>
Ahoj,
když jste to tu tak nakousli, když bych chtěl zpracovávat xml streamy
předem neznámého obsahu, co na to použít ? Potřebuju aby se to
nesložilo když přijde nějaký vadný tag abych měl šanci si to ošetřit.
Tak než začnu psát kolo...
rainbof
13.08.19, Petr Messner <petr.messner na gmail.com>:
> V těchto případech je asi nejednodušší xpath. Minimálně lxml ho umí.
>
> PM
>
> út 13. 8. 2019 v 8:22 odesílatel Ctibor.Plasek <Ctibor.Plasek na seznam.cz>
> napsal:
>
>> Ahoj.
>> Mám takovýto xml soubor (viz.přiložený soubor) - export z ffprobe.
>> Pro ty hodnoty, které jsou u <stream používám toto:
>>
>> from xml.dom import minidom
>> xmldoc = minidom.parse('RainS02E06.mkv.xml')
>> streamlist = xmldoc.getElementsByTagName('stream')
>> for s in streamlist:
>> print(s.attributes['index'].value)
>> print(s.attributes['codec_name'].value)
>> try:
>> print(s.attributes['sample_rate'].value)
>> except:
>> print('none')
>>
>> ale nevím jakým způsobem se dostat k těm "hlubším" hodnotám - např.
>> <tag key="DURATION-eng" - jaká je např.hodnota value u stream index="1"
>>
>> Mohli byste mi, prosím, poradit?
>>
>> Děkuji Ctibor
>>
>>
>>
>>
>> _______________________________________________
>> Python mailing list
>> python na py.cz
>> http://www.py.cz/mailman/listinfo/python <http://www.py.cz/mailman/listinfo/python>
>>
>> Visit: http://www.py.cz <http://www.py.cz>
>>
>
_______________________________________________
Python mailing list
python na py.cz
http://www.py.cz/mailman/listinfo/python <http://www.py.cz/mailman/listinfo/python>
Visit: http://www.py.cz <http://www.py.cz>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://www.py.cz/pipermail/python/attachments/20190813/6f24186b/attachment.html>
Další informace o konferenci Python