【发布时间】:2016-10-27 05:13:17
【问题描述】:
我对这些东西很陌生。由于我的原始 xml 大约 8GB,因此很难手动探索原始 xml 中感兴趣的孩子的所有父母、祖父母、祖父母等。我正在尝试查看所有节点,直到找到感兴趣的孩子。所以我想从这里https://docs.python.org/2/library/xml.etree.elementtree.html 为 country_data.xml 感兴趣的孩子创建 xml 的“骨架”结构。对不起代码:
def LookThrougStructure(parent, xpath_str, stop_flag):
out_str.write('Parent tag: %s\n' % (parent.tag))
for child in parent:
if child.tag == my_tag:
out_str.write('Child tag: %s\n' % (child.tag))
#my_node_is_found_flag = 1
break
LookThrougStructure(child, child.tag, 0)
return
import xml.etree.ElementTree as ET
tree = ET.parse('country_data.xml')
root = tree.getroot()
my_tag = 'neighbor'
out_str = open('xml_structure.txt', 'w')
LookThrougStructure(root, root.tag, my_tag)
out_str.close()
它工作错误并产生所有节点标签:
父标签:data 父标签:country 父标签:rank 父标签:year 父标签:gdppc 子标签:neighbor 父标签:country 父标签: rank 父标签:year 父标签:gdppc 子标签:neighbor Parent 标签:国家 父标签:等级 父标签:年份 父标签:gdppc 子 标签:邻居
但我想要这样的东西(我感兴趣的孩子是“邻居”):
- 数据
- 国家
- 邻居
- 国家
或者那个:/data/country/neighbor。 怎么了?
【问题讨论】:
-
您能否以正确的格式添加实际输出,因为我不太明白您想要什么
-
是:见上文。我不需要排名、年份、gdppc 之类的东西,我只想查看邻居标签的所有父节点。
-
所以基本上你只希望祖先到邻居?