我正在尝试搜索XML文件。我需要
我可以访问localteam元素,但是我不知道如何搜索远程队伍并且还“升级”一个级别来获取id ...我尝试过使用child.iter()和孩子.find('awayteam'),但都没有用..
到目前为止,我有......
for child in root.iter('localteam'):
gs_name = child.get('name')
if gs_name == 'Team A':
print child.tag, child.attrib
for step_child in child.iter():
print step_child.tag, step_child.attrib
gs_name = child.get('name')
XML
<scores sport="sports">
<category name="NAME" id="1419" file_group="USA">
<match date="21.07.2013" time="04:00" status="Finished" id="56456456">
<localteam name="Team A" />
<random name="yyy" />
<awayteam name="Team B" />
<random name="xxx" />
</match>
答案 0 :(得分:2)
搜索match
元素:
for match in root.iter("match"):
if (match.find("localteam").get("name") == "Team A" and
match.find("awayteam").get("name") == "Team B"):
print match.get("id")
break
如果find
调用找不到任何内容,上面会引发AttributeErrors,因此您可能需要添加一些额外的检查或错误处理; e.g。
for match in root.iter("match"):
localteam = match.find("localteam")
awayteam = match.find("awayteam")
if localteam is not None and awayteam is not None and ...