如何使用Python 2.6和minidom添加xml-stylesheet处理指令节点?

时间:2011-04-13 11:21:44

标签: python xml stylesheet minidom processing-instruction

我正在使用minidom创建XML文档 - 如何确保生成的XML文档包含这样的样式表引用:

<?xml-stylesheet type="text/xsl" href="mystyle.xslt"?>

谢谢!

3 个答案:

答案 0 :(得分:8)

使用类似的东西:

from xml.dom import minidom

xml = """
<root>
 <x>text</x>
</root>""" 

dom = minidom.parseString(xml)
pi = dom.createProcessingInstruction('xml-stylesheet',
                                     'type="text/xsl" href="mystyle.xslt"')
root = dom.firstChild
dom.insertBefore(pi, root)
print dom.toprettyxml()

=&GT;

<?xml version="1.0" ?>
<?xml-stylesheet type="text/xsl" href="mystyle.xslt"?>
<root>

   <x>
      text
   </x>

</root>

答案 1 :(得分:2)

我不熟悉minidom,但你必须创建一个名为“xml-stylesheet”和text:“type ='text / xsl'href ='mystyle.xslt'”的处理指令节点(PI)

阅读文档如何创建PI。

答案 2 :(得分:0)

import xml.dom
dom = xml.dom.minidom.parse("C:\\Temp\\Report.xml")
pi = dom.createProcessingInstruction('xml-stylesheet',
                                     'type="text/xsl" href="TestCaseReport.xslt"')
root = dom.firstChild
dom.insertBefore(pi, root)
a = dom.toxml()
f = open("C:\\Report(1).xml",'w')
f.write(a)
f.close()