小编cho*_*way的帖子

Python XPath / libxml2名称空间查询

我一直在尝试解析London Underground Linestatus XML“提要”-收效甚微。我本来希望使用XPath可以“轻松”,但是我得到的是空节点。

我相当确定我不会正确处理uk名称空间。

这是我的(相当简单的代码):

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 "******************************"
Run Code Online (Sandbox Code Playgroud)

record_nodes循环被忽略。xml已正确解析。

有人可以说明一下吗?

python xpath namespaces libxml2 contextpath

0
推荐指数
1
解决办法
775
查看次数

标签 统计

contextpath ×1

libxml2 ×1

namespaces ×1

python ×1

xpath ×1