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


Posted in Python onDecember 03, 2013

前提:安装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()
Python 相关文章推荐
pycharm 使用心得(九)解决No Python interpreter selected的问题
Jun 06 Python
Python标准库之循环器(itertools)介绍
Nov 25 Python
Python中标准模块importlib详解
Apr 16 Python
python使用matplotlib模块绘制多条折线图、散点图
Apr 26 Python
Python求两个圆的交点坐标或三个圆的交点坐标方法
Nov 07 Python
python获取全国城市pm2.5、臭氧等空气质量过程解析
Oct 12 Python
redis数据库及与python交互用法简单示例
Nov 01 Python
python实现在线翻译
Jun 18 Python
python 图像插值 最近邻、双线性、双三次实例
Jul 05 Python
Pandas的Apply函数具体使用
Jul 21 Python
简单的命令查看安装的python版本号
Aug 28 Python
python lambda 表达式形式分析
Apr 03 Python
python使用reportlab画图示例(含中文汉字)
Dec 03 #Python
python33 urllib2使用方法细节讲解
Dec 03 #Python
python使用mysqldb连接数据库操作方法示例详解
Dec 03 #Python
二种python发送邮件实例讲解(python发邮件附件可以使用email模块实现)
Dec 03 #Python
python paramiko实现ssh远程访问的方法
Dec 03 #Python
Python使用urllib2获取网络资源实例讲解
Dec 02 #Python
python读写文件操作示例程序
Dec 02 #Python
You might like
php从字符串创建函数的方法
2015/03/16 PHP
PHP中使用Memache作为进程锁的操作类分享
2015/03/30 PHP
PHP中的静态变量及static静态变量使用详解
2015/11/05 PHP
PHP mysqli事务操作常用方法分析
2017/07/22 PHP
仅用[]()+!等符号就足以实现几乎任意Javascript代码
2010/03/01 Javascript
javascript检测浏览器flash版本的实现代码
2011/12/06 Javascript
jquery子元素过滤选择器使用示例
2013/06/24 Javascript
使用js判断数组中是否包含某一元素(类似于php中的in_array())
2013/12/12 Javascript
用js正确判断用户名cookie是否存在的方法
2014/01/28 Javascript
纯JavaScript实现的兼容各浏览器的添加和移除事件封装
2015/03/28 Javascript
详解参数传递四种形式
2015/07/21 Javascript
jquery马赛克拼接翻转效果代码分享
2015/08/24 Javascript
Bootstrap布局方式详解
2016/05/27 Javascript
JS随机打乱数组的方法小结
2016/06/22 Javascript
JS获取当前页面名称的简单实例
2016/08/19 Javascript
Angular 中 select指令用法详解
2016/09/29 Javascript
JS+CSS实现网页加载中的动画效果
2017/10/27 Javascript
vue综合组件间的通信详解
2017/11/06 Javascript
Vue多种方法实现表头和首列固定的示例代码
2018/02/02 Javascript
JavaScript同源策略和跨域访问实例详解
2018/04/03 Javascript
JavaScript Array对象基本方法详解
2019/09/03 Javascript
JS常用正则表达式超全集(密码强度校验,金额校验,IE版本,IPv4,IPv6校验)
2020/02/03 Javascript
[00:13]天涯墨客二技能展示
2018/08/25 DOTA
[01:18]PWL开团时刻DAY10——一拳超人
2020/11/11 DOTA
python 网络编程常用代码段
2016/08/28 Python
200行自定义python异步非阻塞Web框架
2017/03/15 Python
Python新手们容易犯的几个错误总结
2017/04/01 Python
Python工厂函数用法实例分析
2018/05/14 Python
Python的高阶函数用法实例分析
2019/04/11 Python
python datetime中strptime用法详解
2019/08/29 Python
YSL Beauty加拿大官方商城:圣罗兰美妆加拿大
2017/05/15 全球购物
英国历史最悠久的DJ设备供应商:DJ Finance、DJ Warehouse、The DJ Shop
2019/09/04 全球购物
Android interview questions
2016/12/25 面试题
保护地球的标语
2014/06/17 职场文书
青年文明号汇报材料
2014/12/23 职场文书
毕业班班主任工作总结2015
2015/07/23 职场文书