python .write()方法更改了我的XML输出

时间:2015-02-18 02:16:55

标签: python xml parsing lxml elementtree

当我尝试使用xml.etree.celement库编辑我的XML文件然后我尝试将更改写入新的XML文件时,我的XML文件发生了更改。

我需要对XML文件进行更改,然后使用对文本所做的更改来编写精确的副本。我曾尝试使用c14n等标准并使用正确的编码和xml声明,但仍然没有运气。

encoding =' utf-8',xml_declaration = True

该文件仍有少量更改,例如:

原始DOC:

<remote-name>&#10;glossary_name        </remote-name>

在新文档中我有:

<remote-name>
glossary_name        </remote-name>

如果只是轻微的改变,我怎样才能使它们完全相同

我使用这个小脚本:

from xml.dom import minidom
import os
import xml.etree.cElementTree as et
import tkFileDialog
from lxml import etree as tt

## Grab the Particular file to convert xml
xmldoc = tt.parse(newfile)
root  = xmldoc.getroot()
##loop through to convert the images to the correct Path
##finds the intro dashboard and converts the image
for dashboard in root.iter('dashboard'):
    if dashboard.get('name') == "Intro":

        ##Loops through the zones within a specified dashboard
        for zone in list(dashboard.iter('zone')):
            if zone.get('id') == ('88'):
                zone.set('param', 'customerFiles/Image/Intro - Top.png')        
    else:
        continue

xmldoc.write_c14n('output.xml')
#os.rename('output.xml',"output.twb")

0 个答案:

没有答案