Работа с xpath в Python

Posted by & filed under python.

Простейшая работа: import libxml2 doc=libxml2.parseDoc(content) a=doc.xpathEval(‘/kml/Response/name’) print ((a[0].content)) Работа с учётом namespace: import libxml2 doc=libxml2.parseDoc(content) xp = doc.xpathNewContext() xp.xpathRegisterNs(«kml2», «http://earth.google.com/kml/2.0″) a=xp.xpathEval(‘/kml2:kml/kml2:Response/kml2:name’) print ((a[0].content)) Данный пример работает для следующего xml-файла: <kml xmlns=»http://earth.google.com/kml/2.0″><Response> <name>1600 pennsylvania ave washington dc</name> <Status> <code>200</code> <request>geocode</request> </Status> <Placemark id=»p1″> <address>1600 Pennsylvania Ave NW, Washington D.C., DC 20500, USA</address> <AddressDetails Accuracy=»8″ xmlns=»urn:oasis:names:tc:ciq:xsdschema:xAL:2.0»><Country><CountryNameCode>US</CountryNameCode><CountryName>USA</CountryName><AdministrativeArea><AdministrativeAreaName>DC</AdministrativeAreaName><SubAdministrativeArea><SubAdministrativeAreaName>District of… Read more »