Home > Backend Development > Python Tutorial > python将xml xsl文件生成html文件存储示例讲解

python将xml xsl文件生成html文件存储示例讲解

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-06-06 11:28:14
Original
1734 people have browsed it

前提:安装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()

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Issues
objective-c - socket sends data in xml format
From 1970-01-01 08:00:00
0
0
0
How to parse and process HTML/XML in PHP?
From 1970-01-01 08:00:00
0
0
0
How to parse and process HTML/XML in PHP?
From 1970-01-01 08:00:00
0
0
0
How to parse and process HTML/XML using PHP?
From 1970-01-01 08:00:00
0
0
0
Update xml namespace with data from PHP form
From 1970-01-01 08:00:00
0
0
0
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template