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自定义函数定义,参数,调用代码解析
Dec 27 Python
python使用pil库实现图片合成实例代码
Jan 20 Python
Python数据分析之双色球中蓝红球分析统计示例
Feb 03 Python
python xlsxwriter创建excel图表的方法
Jun 11 Python
Django代码性能优化与Pycharm Profile使用详解
Aug 26 Python
python实现连续图文识别
Dec 18 Python
Python中最大递归深度值的探讨
Mar 05 Python
Python实现去除图片中指定颜色的像素功能示例
Apr 13 Python
Python使用微信itchat接口实现查看自己微信的信息功能详解
Aug 22 Python
Pandas直接读取sql脚本的方法
Jan 21 Python
Python中Pyspider爬虫框架的基本使用详解
Jan 27 Python
python实现学生信息管理系统(面向对象)
Jun 05 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
玩转虚拟域名◎+ .
2006/10/09 PHP
PHP无限分类代码,支持数组格式化、直接输出菜单两种方式
2011/05/18 PHP
php 转换字符串编码 iconv与mb_convert_encoding的区别说明
2011/11/10 PHP
解析php session_set_save_handler 函数的用法(mysql)
2013/06/29 PHP
php定义一个参数带有默认值的函数实例分析
2015/03/16 PHP
PHP生成zip压缩包的常用方法示例
2019/08/22 PHP
javascript 在firebug调试时用console.log的方法
2012/05/10 Javascript
jquery五角星评分插件示例分享
2014/02/21 Javascript
jquery分页插件jpaginate在IE中不兼容问题
2014/04/22 Javascript
用JavaScript实现对话框的教程
2015/06/04 Javascript
JS获取文件大小方法小结
2015/12/08 Javascript
BootStrap实现树形目录组件代码详解
2016/06/21 Javascript
request请求获取参数的实现方法(post和get两种方式)
2016/09/27 Javascript
基于js实现的限制文本框只可以输入数字
2016/12/05 Javascript
微信小程序 视图容器组件的详解及实例代码
2017/01/19 Javascript
angular4实现tab栏切换的方法示例
2017/10/21 Javascript
解决JavaScript中0.1+0.2不等于0.3问题
2018/10/23 Javascript
Vue中多个元素、组件的过渡及列表过渡的方法示例
2019/02/13 Javascript
微信小程序获取用户信息及手机号(后端TP5.0)
2019/09/12 Javascript
JavaScript修改注册表实例代码
2020/01/05 Javascript
解决vuex改变了state的值,但是页面没有更新的问题
2020/11/12 Javascript
分享Python字符串关键点
2015/12/13 Python
Python元组及文件核心对象类型详解
2018/02/11 Python
pandas修改DataFrame列名的方法
2018/04/08 Python
Pytorch使用MNIST数据集实现CGAN和生成指定的数字方式
2020/01/10 Python
pytorch dataloader 取batch_size时候出现bug的解决方式
2020/02/20 Python
如何用Python进行时间序列分解和预测
2021/03/01 Python
如何利用input事件来监听移动端的输入
2016/04/15 HTML / CSS
eBay爱尔兰站:eBay.ie
2019/08/09 全球购物
函授大学生自我鉴定
2014/02/05 职场文书
承诺书模板
2014/08/30 职场文书
介绍信如何写
2015/01/31 职场文书
大学生入党自传2015
2015/06/26 职场文书
开学典礼致辞
2015/07/29 职场文书
工伤调解协议书
2016/03/21 职场文书
三星 3nm 芯片将于第二季度开始量产
2022/04/29 数码科技