Я пытался проанализировать XML-фид London Underground Linestatus - без особого успеха. Я бы ожидал, что это будет "легко" с использованием XPath, но я получаю пустые узлы.
Я совершенно уверен, что не правильно обращаюсь с пространством имен в Великобритании.
Вот мой (довольно простой код):
import libxml2
from urllib2 import urlopen
data = urlopen('http://cloud.tfl.gov.uk/TrackerNet/LineStatus').read()
try:
doc = libxml2.parseDoc(data)
except (libxml2.parserError, TypeError):
print "Problems loading XML"
context = doc.xpathNewContext()
context.xpathRegisterNs("uk", "http://webservices.lul.co.uk")
record_nodes = context.xpathEval('//uk:LineStatus')
for node in record_nodes:
print "******************************"
Цикл record_nodes игнорируется. XML анализируется правильно.
Может кто-нибудь, пожалуйста, пролить свет на это.