tree = etree.parse("pinnacle_feed.xml")
fdtime = tree.xpath('//rsp/fd/fdTime/text()')
global lasttime
lasttime = fdtime[0]
for leagues in tree.getiterator('league'):
leagueid = tree.xpath('//id/text()')
for elt in leagues.getiterator('event'):
startDateTime = elt.xpath('//startDateTime/text()')
eventId = elt.xpath('//id/text()')
homeTeam = elt.xpath('./homeTeam/name/text()')
awayTeam = elt.xpath('./awayTeam/name/text()')
homeTeamOdds = elt.xpath('./periods/period/moneyLine/homePrice/text()')
awayTeamOdds = elt.xpath('./periods/period/moneyLine/awayPrice/text()')
drawOdds = elt.xpath('./periods/period/moneyLine/drawPrice/text()')
print full_iterator
这是我目前正在使用的代码。问题是,当我解析联盟中的事件时,我需要找出“当前”的联盟。
leagueid = tree.xpath('//id/text()')
返回所有联赛的列表,而不仅仅是“当前的一个”
我希望我能正确解释自己,有人可以给我一个手/建议。
XML doc:http://pastebin.com/BDaJ7Ayx
答案 0 :(得分:0)
我认为这是从leagues
变量引用的当前节点获取id所需的内容:
leagueid = leagues.xpath('./id/text()')
Xpath上方从当前<id>
节点查找子节点<league>
。