lxml findall() 问题
我正在尝试写一个简单的程序,用来获取维基百科的最近更改,并解析那个XML文件。
我卡在了一个地方,就是findall()这个函数没有正常工作。我哪里出错了呢?
import urllib2
from lxml import etree as ET
result = urllib2.urlopen('http://en.wikipedia.org/w/api.php?action=query&format=xml&list=recentchanges&rcprop=title|ids|sizes|flags|user|timestamp').read()
xml=ET.fromstring (result)
print xml[0][0][0].attrib # that works!
print xml.findall ('api/query/recentchanges/rc') # that don't!
1 个回答
3
我怀疑根节点就是主题节点,所以它在根节点里面寻找一个叫“api”的节点。如果是这样的话,下面这两种写法都可以用:
query/recentchanges/rc
/api/query/recentchanges/rc