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 相关文章推荐
Python模块搜索概念介绍及模块安装方法介绍
Jun 03 Python
对pandas的dataframe绘图并保存的实现方法
Aug 05 Python
Python实现的对一个数进行因式分解操作示例
Jun 27 Python
Django后台admin的使用详解
Jul 08 Python
Python 函数list&read&seek详解
Aug 28 Python
face++与python实现人脸识别签到(考勤)功能
Aug 28 Python
python银行系统实现源码
Oct 25 Python
python多进程重复加载的解决方式
Dec 13 Python
python 根据列表批量下载网易云音乐的免费音乐
Dec 03 Python
关于多种方式完美解决Python pip命令下载第三方库的问题
Dec 21 Python
python urllib库的使用详解
Apr 13 Python
python 三边测量定位的实现代码
Apr 22 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
BBS(php & mysql)完整版(八)
2006/10/09 PHP
php上的memcache和memcached两个pecl库
2010/03/29 PHP
php事务处理实例详解
2014/07/11 PHP
php实现字符串翻转的方法
2015/03/27 PHP
CI框架常用函数封装实例
2016/11/21 PHP
精解window.setTimeout()&window.setInterval()使用方式与参数传递问题!
2007/11/23 Javascript
js 函数调用模式小结
2011/12/26 Javascript
js动态添加事件并可传参数示例代码
2013/10/21 Javascript
js判断横竖屏及禁止浏览器滑动条示例
2014/04/29 Javascript
jQuery中:last选择器用法实例
2014/12/30 Javascript
JS实现漂亮的淡蓝色滑动门效果代码
2015/09/23 Javascript
一览画面点击复选框后获取多个id值的方法
2016/05/30 Javascript
Ubuntu 16.04 64位中搭建Node.js开发环境教程
2016/10/19 Javascript
js表单登陆验证示例
2016/10/19 Javascript
浅谈js键盘事件全面控制
2016/12/01 Javascript
JavaScript中的return布尔值的用法和原理解析
2017/08/14 Javascript
JS原型继承四步曲及原型继承图一览
2017/11/28 Javascript
利用js给datalist或select动态添加option选项的方法
2018/01/25 Javascript
js自定义trim函数实现删除两端空格功能
2018/02/09 Javascript
NodeJS实现不可逆加密与密码密文保存的方法
2018/03/16 NodeJs
在vue项目中,将juery设置为全局变量的方法
2018/09/25 Javascript
详解vue-cli项目在IE浏览器打开报错解决方法
2020/12/10 Vue.js
Python日期操作学习笔记
2008/10/07 Python
使用C语言扩展Python程序的简单入门指引
2015/04/14 Python
Python对列表中的各项进行关联详解
2017/08/15 Python
pycharm执行python时,填写参数的方法
2018/10/29 Python
python机器学习实现决策树
2019/11/11 Python
Cython编译python为so 代码加密示例
2019/12/23 Python
pycharm 对代码做静态检查操作
2020/06/09 Python
python中def是做什么的
2020/06/10 Python
英国品牌男装折扣网站:Brown Bag
2018/03/08 全球购物
2014大学班主任工作总结
2014/11/08 职场文书
嘉年华活动新闻稿
2015/07/17 职场文书
幼儿园师德师风心得体会
2016/01/12 职场文书
Java存储没有重复元素的数组
2022/04/29 Java/Android
Win10多屏显示如何设置?Win10电脑多屏显示设置操作方法
2022/07/07 数码科技