Python将xml和xsl转换为html的方法


Posted in Python onMarch 10, 2015

本文实例讲述了Python将xml和xsl转换为html的方法。分享给大家供大家参考。具体分析如下:

这里需要用libxml2,所以还要先安装了libxml2模块才能使用。代码如下:

# -*- 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 相关文章推荐
python复制与引用用法分析
Apr 08 Python
python 表达式和语句及for、while循环练习实例
Jul 07 Python
在Python web中实现验证码图片代码分享
Nov 09 Python
对Python subprocess.Popen子进程管道阻塞详解
Oct 29 Python
Django中使用Celery的方法示例
Nov 29 Python
python实现nao机器人手臂动作控制
Apr 29 Python
Python函数和模块的使用总结
May 20 Python
利用pyuic5将ui文件转换为py文件的方法
Jun 19 Python
Django如何使用第三方服务发送电子邮件
Aug 14 Python
python飞机大战pygame游戏框架搭建操作详解
Dec 17 Python
tensorboard实现同时显示训练曲线和测试曲线
Jan 21 Python
pytho matplotlib工具栏源码探析一之禁用工具栏、默认工具栏和工具栏管理器三种模式的差异
Feb 25 Python
Python写的Tkinter程序屏幕居中方法
Mar 10 #Python
Python生成随机密码
Mar 10 #Python
Python获取单个程序CPU使用情况趋势图
Mar 10 #Python
Python使用xlrd读取Excel格式文件的方法
Mar 10 #Python
使用graphics.py实现2048小游戏
Mar 10 #Python
Python实现去除代码前行号的方法
Mar 10 #Python
Linux下使用python调用top命令获得CPU利用率
Mar 10 #Python
You might like
php生成二维码时出现中文乱码的解决方法
2014/12/18 PHP
CI框架中site_url()和base_url()的区别
2015/01/07 PHP
php使用ob_flush不能每隔一秒输出原理分析
2015/06/02 PHP
变量在 PHP7 内部的实现(一)
2015/12/21 PHP
PHP receiveMail实现收邮件功能
2018/04/25 PHP
在Laravel 的 Blade 模版中实现定义变量
2019/10/14 PHP
js将json格式内容转换成对象的方法
2013/11/01 Javascript
jquery滚动特效集锦
2015/06/03 Javascript
基于JavaScript获取鼠标位置的各种方法
2015/12/16 Javascript
10个JavaScript中易犯小错误
2016/02/14 Javascript
Bootstrap3制作图片轮播效果
2016/05/12 Javascript
详解jQuery中的DOM操作
2016/12/23 Javascript
js仿新浪微博消息发布功能
2017/02/17 Javascript
原生JS实现垂直手风琴效果
2017/02/19 Javascript
ES6新特性之变量和字符串用法示例
2017/04/01 Javascript
深入研究jQuery图片懒加载 lazyload.js使用方法
2017/08/16 jQuery
JavaScript你不知道的一些数组方法
2017/08/18 Javascript
JavaScript中如何判断一个值的类型
2017/09/15 Javascript
Vue+Jwt+SpringBoot+Ldap完成登录认证的示例代码
2018/05/21 Javascript
Vue从TodoList中学父子组件通信
2019/02/05 Javascript
JS+html5实现异步上传图片显示上传文件进度条功能示例
2019/11/09 Javascript
Element Steps步骤条的使用方法
2020/07/26 Javascript
基于react项目打包css引用路径错误解决方案
2020/10/28 Javascript
详解Django的model查询操作与查询性能优化
2018/10/16 Python
HTML的form表单和django的form表单
2019/07/25 Python
numpy.linalg.eig() 计算矩阵特征向量方式
2019/11/29 Python
OpenCV+Python3.5 简易手势识别的实现
2020/12/21 Python
科尔士百货公司官网:Kohl’s
2016/07/11 全球购物
澳大利亚个性化儿童礼品网站:Bright Star Kids
2019/06/14 全球购物
新东方旗下远程教育网站:新东方在线
2020/03/19 全球购物
新西兰最大的天然保健及护肤品网站:HealthPost(直邮中国)
2021/02/13 全球购物
应届毕业生自荐信例文
2014/02/26 职场文书
考试诚信承诺书
2014/05/23 职场文书
新年晚会开场白
2015/05/29 职场文书
电子表的操作介绍说明书
2019/10/28 职场文书
关于办理居住证的介绍信模板
2019/11/27 职场文书