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爬虫之使用urllib2组件抓取网页内容
Nov 04 Python
Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程
Nov 18 Python
python通过ftplib登录到ftp服务器的方法
May 08 Python
Python正则表达式使用范例分享
Dec 04 Python
python+matplotlib绘制饼图散点图实例代码
Jan 20 Python
在Python中使用filter去除列表中值为假及空字符串的例子
Nov 18 Python
numpy.transpose()实现数组的转置例子
Dec 02 Python
python字典setdefault方法和get方法使用实例
Dec 25 Python
基于python求两个列表的并集.交集.差集
Feb 10 Python
python中random.randint和random.randrange的区别详解
Sep 20 Python
PyCharm Ctrl+Shift+F 失灵的简单有效解决操作
Jan 15 Python
python标准库ElementTree处理xml
May 20 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
Laravel接收前端ajax传来的数据的实例代码
2017/07/20 PHP
javascript与CSS复习(二)
2010/06/29 Javascript
javascript中的数字与字符串相加实例分析
2011/08/14 Javascript
js indexOf()定义和用法
2012/10/21 Javascript
Javascript简单实现可拖动的div
2013/10/22 Javascript
JS创建自定义表格具体实现
2014/02/11 Javascript
简述JavaScript中正则表达式的使用方法
2015/06/15 Javascript
js实现n秒倒计时后才可以点击的效果
2015/12/20 Javascript
原生javascript实现匀速运动动画效果
2016/02/26 Javascript
原生js仿jquery animate动画效果
2016/07/13 Javascript
原生JS实现圆环拖拽效果
2017/04/07 Javascript
JS实现的合并两个有序链表算法示例
2019/02/25 Javascript
JS实现的简单tab切换功能完整示例
2019/06/20 Javascript
[02:45]DOTA2英雄基础教程 伐木机
2013/12/23 DOTA
用python读写excel的方法
2014/11/18 Python
Python使用gensim计算文档相似性
2016/04/10 Python
基于python的字节编译详解
2017/09/20 Python
python编程培训 python培训靠谱吗
2018/01/17 Python
用Django实现一个可运行的区块链应用
2018/03/08 Python
解决tensorflow模型参数保存和加载的问题
2018/07/26 Python
python实现将文件夹内的每张图片批量分割成多张
2019/07/22 Python
Django 开发环境与生产环境的区分详解
2019/07/26 Python
python自动化测试无法启动谷歌浏览器问题
2019/10/10 Python
Django 返回json数据的实现示例
2020/03/05 Python
如何使用python记录室友的抖音在线时间
2020/06/29 Python
python 下划线的不同用法
2020/10/24 Python
python 爬虫请求模块requests详解
2020/12/04 Python
简历的自我评价
2014/02/03 职场文书
大学军训感言600字
2014/02/25 职场文书
装配出错检讨书
2014/09/23 职场文书
监察局领导班子四风问题整改措施思想汇报
2014/10/05 职场文书
群众路线教育实践活动总结
2014/10/30 职场文书
采购员岗位职责
2015/02/03 职场文书
社区五一劳动节活动总结
2015/02/09 职场文书
2015年党支部书记工作总结
2015/05/21 职场文书
于丹讲座视频观后感
2015/06/15 职场文书