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对象体系深入分析
Oct 28 Python
Python for Informatics 第11章之正则表达式(二)
Apr 21 Python
Google开源的Python格式化工具YAPF的安装和使用教程
May 31 Python
利用Python为iOS10生成图标和截屏
Sep 24 Python
Python3.4实现远程控制电脑开关机
Feb 22 Python
python list是否包含另一个list所有元素的实例
May 04 Python
Python使用pandas处理CSV文件的实例讲解
Jun 22 Python
int在python中的含义以及用法
Jun 27 Python
Python unittest工作原理和使用过程解析
Feb 24 Python
python实现人像动漫化的示例代码
May 17 Python
浅析Django接口版本控制
Jun 26 Python
python数据可视化使用pyfinance分析证券收益示例详解
Nov 20 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中如何同时使用session和cookie来保存用户登录信息
2013/07/05 PHP
从零开始学YII2框架(二)通过 Composer 安装扩展插件
2014/08/20 PHP
Laravel数据库读写分离配置的方法
2019/10/13 PHP
用CSS+JS实现的进度条效果效果
2007/06/05 Javascript
jQuery-onload让第一次页面加载时图片是淡入方式显示
2012/05/23 Javascript
jquery和javascript中如何将一元素的内容赋给另一元素
2014/01/09 Javascript
jquery左边浮动到一定位置时显示返回顶部按钮
2014/06/05 Javascript
jQuery获取动态生成的元素示例
2014/06/15 Javascript
javascript原型模式用法实例详解
2015/06/04 Javascript
jQuery+PHP实现可编辑表格字段内容并实时保存
2015/10/09 Javascript
JavaScript Split()方法
2015/12/18 Javascript
JavaScript 弹出子窗体并返回结果到父窗体的实现代码
2016/05/28 Javascript
JavaScript实现刷新不重记的倒计时
2016/08/10 Javascript
JavaScript基本语法_动力节点Java学院整理
2017/06/26 Javascript
JavaScript模拟文件拖选框样式v1.0的实例
2017/08/04 Javascript
JavaScript模块模式实例详解
2017/10/25 Javascript
微信小程序中换行空格(多个空格)写法详解
2018/07/10 Javascript
详解微信小程序实现仿微信聊天界面(各种细节处理)
2019/02/17 Javascript
微信小程序实现人脸识别登陆的示例代码
2019/04/02 Javascript
JavaScript JSON数据处理全集(小结)
2019/08/15 Javascript
JavaScript中数组去重的5种方法
2020/07/04 Javascript
[52:27]2018DOTA2亚洲邀请赛 3.31 小组赛B组 paiN vs Secret
2018/04/01 DOTA
python自动化测试之从命令行运行测试用例with verbosity
2014/09/28 Python
python获取指定目录下所有文件名列表的方法
2015/05/20 Python
基于python3 类的属性、方法、封装、继承实例讲解
2017/09/19 Python
解决Python一行输出不显示的问题
2018/12/03 Python
Python 下载及安装详细步骤
2019/11/04 Python
Python更新所有已安装包的操作
2020/02/13 Python
python解释器pycharm安装及环境变量配置教程图文详解
2020/02/26 Python
Python使用xpath实现图片爬取
2020/09/16 Python
html5 迷宫游戏(碰撞检测)实例一
2013/07/25 HTML / CSS
Structs界面控制层技术
2013/10/11 面试题
工艺工程师工作职责
2013/11/23 职场文书
经销商订货会主持词
2014/03/27 职场文书
期末复习计划
2015/01/19 职场文书
git中cherry-pick命令的使用教程
2022/06/25 Servers