您好,欢迎来到奥特财经网。
搜索
您的当前位置:首页Python实现把xml或xsl转换为html格式

Python实现把xml或xsl转换为html格式

来源:奥特财经网


前些天用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()

Copyright © 2019- atzq.com.cn 版权所有

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务