前些天用python处理xml的转换的一个小程序,用来把xml,xsl转换成html。
用的libxml2,所以还要先安装了libxml2模块才能使用。
# -*- coding: mbcs -*- #!/usr/bin/python import libxml2,libxslt class compoundXML: def __init__(self): self._result = None self._xsl = None self._xml = None def do(self,xml_file_name,xsl_file_name): self._xml = libxml2.parseFile(xml_file_name) if self._xml == None: return 0 styledoc = libxml2.parseFile(xsl_file_name) if styledoc == None: return 0 self._xsl = libxslt.parseStylesheetDoc(styledoc) if self._xsl == None: return 0 self._result = self._xsl.applyStylesheet(self._xml,None) def get_xml_doc(self): return self._result def get_translated(self): return self._result.serialize('UTF-8') def save_translated(self,file_name): self._xsl.saveResultToFilename(file_name,self._result,0) def release(self): ''' this function must be called in the end. ''' self._xsl.freeStylesheet() self._xml.freeDoc() self._result.freeDoc() self._xsl = None self._xml = None self._result = None if __name__ == '__main__': test = compoundXML() test.do('test/testxmlutil.xml','test/testxmlutil.xsl') print test.get_translated() test.save_translated('test/testxmlutil.htm') test.release()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。