[python] ElementTree a Xpath - hledání podle atributu elementu

martin.stiborsky na gmail.com martin.stiborsky na gmail.com
Pátek Březen 31 13:27:55 CEST 2017


Zdravím, Potřeboval bych v xml souboru najít elementy s určitým
atributem. Na webu ElementTree jsem našel zmínku, že podporují Xpath -
http://effbot.org/zone/element-xpath.htm

Jenže výraz pro můj záměr - [@attrib='value'] se Pythonu vůbec nelíbí,
kvůli hranatým závorkám prská.

tree.findall("year/month[@number='2007']")
------------------------------------------------------------
<type 'exceptions.SyntaxError'>: expected path separator ([)

Takže, buď dělám nějakou blbost, což by mohlo být, vzhledem ke skoro
půl druhé ranní, nebo nevím. Přece se ty závorky nebudou nějak
escapovat, nebo jo ?

Update: zrovna jsem zkusil nějaké příklady s find přes xpath výrazy na
webu lxml a taky nejedou. Takže, python kvůli té závorce začal prskat
až v pozdějších verzích .. nebo kdo ví, zase něco koním, už to vidím :D


Další informace o konferenci Python