将一个带有xml文件内容的标记写入其他xml文件python

时间:2015-11-13 11:13:43

标签: python xml

我有一个包含许多标签的巨大xml文件。我需要提取一个标签的一个内容,并使用python代码将其写入其他xml文件。 以下是xml代码的示例:

<madamira_output xmlns="urn:edu.columbia.ccls.madamira.configuration:0.1">
     <out_seg id="SENT1">
           <word1>.....</word1>
           <word2>.....</word2>
     </out_seg>
     <out_seg id="SENT2">
           <word1>.....</word1>
           <word2>.....</word2>
     </out_seg>

以下是python代码:

 from xml.etree import ElementTree
 with open('100.xml', 'rt') as f:
     tree = ElementTree.parse(f)
 sent=[]
 for node in tree.iter('{urn:edu.columbia.ccls.madamira.configuration:0.1}out_seg'):
     sent.append(node)
 count_file=1
 for i in sent:
     save_path = '/Desktop/13/out'
     completeName = os.path.join(save_path, str(count_file)+".xml")
     count_file=count_file+1
     with open(completeName, "w") as f:
         f.write(i)

但是文件中没有任何内容。请帮忙

1 个答案:

答案 0 :(得分:1)

out_seg的子元素格式不正确。结束标记(word1)与开始标记(word_1)不匹配。

第二,使用以下代码将元素内容写入文件:

打开(completeName,&#34; w&#34;)为f:

     f.write(ElementTree.tostring(i))