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实现的石头剪子布代码分享
Aug 22 Python
python中循环语句while用法实例
May 16 Python
Python实现将数据写入netCDF4中的方法示例
Aug 30 Python
python基于paramiko将文件上传到服务器代码实现
Jul 08 Python
python 图片去噪的方法示例
Jul 09 Python
python模拟键盘输入 切换键盘布局过程解析
Aug 15 Python
python实现微信小程序用户登录、模板推送
Aug 28 Python
Python 给下载文件显示进度条和下载时间的实现
Apr 02 Python
什么是python类属性
Jun 10 Python
Python利用Faiss库实现ANN近邻搜索的方法详解
Aug 03 Python
Django修改app名称和数据表迁移方案实现
Sep 17 Python
使用OpenCV校准鱼眼镜头的方法
Nov 26 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 COOKIE及时生效的方法介绍
2014/02/14 PHP
PHP实现生成推广海报的方法详解
2018/03/14 PHP
Javascript 代码也可以变得优美的实现方法
2009/06/22 Javascript
JavaScript 定义function的三种方式小结
2009/10/16 Javascript
javascript当中的代码嗅探扩展原生对象和原型(prototype)
2013/01/11 Javascript
js左右弹性滚动对联广告代码分享
2014/02/19 Javascript
js获取窗口相对于屏幕左边和上边的位置坐标
2014/05/15 Javascript
js Calender控件使用详解
2015/01/05 Javascript
JS实现鼠标滑过折叠与展开菜单效果代码
2015/09/06 Javascript
【经验总结】编写JavaScript代码时应遵循的14条规律
2016/06/20 Javascript
jQuery插件Validation快速完成表单验证的方式
2016/07/28 Javascript
JavaScript实现事件的中断传播和行为阻止方法示例
2017/01/20 Javascript
详解vue跨组件通信的几种方法
2017/06/15 Javascript
vue 指定组件缓存实例详解
2018/04/01 Javascript
使用element-ui table expand展开行实现手风琴效果
2019/03/15 Javascript
Vue路由守卫之路由独享守卫
2019/09/25 Javascript
vue.js 子组件无法获取父组件store值的解决方式
2019/11/08 Javascript
[01:28]一分钟告诉你DOTA2 TI9不朽宝藏Ⅱ中有什么!
2019/07/09 DOTA
在Django中创建第一个静态视图
2015/07/15 Python
深入了解和应用Python 装饰器 @decorator
2019/04/02 Python
公认8个效率最高的爬虫框架
2020/07/28 Python
Python 使用office365邮箱的示例
2020/10/29 Python
中学生自我鉴定
2014/02/04 职场文书
乡镇纠风工作实施方案
2014/03/22 职场文书
篮球比赛口号
2014/06/10 职场文书
危货运输企业安全生产责任书
2014/07/28 职场文书
关于旅游的活动方案
2014/08/15 职场文书
运动会演讲稿50字
2014/08/25 职场文书
中学生爱国演讲稿
2014/09/05 职场文书
2014年环保工作总结
2014/11/26 职场文书
中层干部考核评语
2015/01/04 职场文书
2015年公路养护工作总结
2015/05/13 职场文书
高二化学教学反思
2016/02/22 职场文书
星际争霸 Light vs Action 一场把教主看到鬼畜的比赛
2022/04/01 星际争霸
解决IDEA翻译插件Translation报错更新TTK失败不能使用
2022/04/24 Python