|
前提:安装libxml2 libxstl
官方网站:http://xmlsoft.org/XSLT/index.html
安装包下载:http://xmlsoft.org/sources/
下面是windows平台的exe安装文件下载:
http://xmlsoft.org/sources/win32/python/ 这是转载的测试代码:
复制代码 代码如下: # -*- 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()
(编辑:安卓应用网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|