前些天用python处理xml的转换的一个小程序,用来把xml,xsl转换成html。
用的libxml2,所以还要先安装了libxml2模块才能使用。
# -*- coding: mbcs -*- #!/usr/bin/pythonimport libxml2, libxsltclass 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()新闻热点
疑难解答
图片精选