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编程开发之类型转换convert实例分析
Nov 13 Python
Python 爬虫图片简单实现
Jun 01 Python
使用python和pygame绘制繁花曲线的方法
Feb 24 Python
python脚本监控Tomcat服务器的方法
Jul 06 Python
python交换两个变量的值方法
Jan 12 Python
python openpyxl使用方法详解
Jul 18 Python
Django之编辑时根据条件跳转回原页面的方法
Aug 21 Python
详解Django admin高级用法
Nov 06 Python
简单了解python元组tuple相关原理
Dec 02 Python
jupyter notebook 多环境conda kernel配置方式
Apr 10 Python
浅谈TensorFlow之稀疏张量表示
Jun 30 Python
Python OpenCV 彩色与灰度图像的转换实现
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
使用VisualStudio开发php的图文设置方法
2010/08/21 PHP
php xml常用函数的集合(比较详细)
2013/06/06 PHP
php批量更改数据库表前缀实现方法
2013/10/26 PHP
phpphp图片采集后按原路径保存图片示例
2014/02/18 PHP
在Mac OS下搭建LNMP开发环境的步骤详解
2017/03/10 PHP
PHP下载文件函数与用法示例
2019/09/27 PHP
解决Laravel自定义类引入和命名空间的问题
2019/10/15 PHP
Thinkphp页面跳转设置跳转等待时间的操作
2019/10/16 PHP
自写简单JS判断是否已经弹出页面
2010/10/20 Javascript
纯JS实现五子棋游戏兼容各浏览器(附源码)
2013/04/24 Javascript
jquery对元素拖动排序示例
2014/01/16 Javascript
javascript页面上使用动态时间具体实现
2014/03/18 Javascript
JavaScript中的console.time()函数详细介绍
2014/12/29 Javascript
javascript实现多级联动下拉菜单的方法
2015/02/06 Javascript
js操作css属性实现div层展开关闭效果的方法
2015/05/11 Javascript
JavaScript去除数组里重复值的方法
2015/07/13 Javascript
jQuery时间轴插件使用详解
2015/07/16 Javascript
浅谈Javascript数组索引
2015/07/29 Javascript
jQuery中cookie插件用法实例分析
2015/12/04 Javascript
NodeJS基础API搭建服务器详细过程记录
2017/04/01 NodeJs
vue params、query传参使用详解
2017/09/12 Javascript
详解如何让Express支持async/await
2017/10/09 Javascript
Angular5中调用第三方库及jQuery的添加的方法
2018/06/07 jQuery
vue实现路由监听和参数监听
2019/10/29 Javascript
JS插入排序简单理解与实现方法分析
2019/11/25 Javascript
[04:13]2014DOTA2国际邀请赛 专访DC目前形势不容乐观
2014/07/12 DOTA
[42:27]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#2Fnatic VS OG第三局
2016/03/05 DOTA
python获取命令行输入参数列表的实例代码
2018/06/23 Python
Selenium(Python web测试工具)基本用法详解
2018/08/10 Python
Python实现高斯函数的三维显示方法
2018/12/29 Python
Django 数据库同步操作技巧详解
2019/07/19 Python
2014乡镇党政班子四风问题思想汇报
2014/09/14 职场文书
2014年仓库管理工作总结
2014/12/17 职场文书
行政司机岗位职责
2015/04/10 职场文书
婚宴新娘致辞
2015/07/28 职场文书
Python爬虫实战之爬取京东商品数据并实实现数据可视化
2021/06/07 Python