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中的字符串与字符编码(推荐)
Dec 14 Python
Python基于贪心算法解决背包问题示例
Nov 27 Python
python实现简单http服务器功能
Sep 17 Python
使用Python将Mysql的查询数据导出到文件的方法
Feb 25 Python
python获取微信企业号打卡数据并生成windows计划任务
Apr 30 Python
python启动应用程序和终止应用程序的方法
Jun 28 Python
Python使用贪婪算法解决问题
Oct 22 Python
python双端队列原理、实现与使用方法分析
Nov 27 Python
python 列表、字典和集合的添加和删除操作
Dec 16 Python
python三引号如何输入
Jul 06 Python
用Python仅20行代码编写一个简单的端口扫描器
Apr 08 Python
Python FuzzyWuzzy实现模糊匹配
Apr 28 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的类 功能齐全的发送邮件类
2006/10/09 PHP
支持php4、php5的mysql数据库操作类
2008/01/10 PHP
基于xcache的配置与使用详解
2013/06/18 PHP
thinkPHP5框架导出Excel文件简单操作示例
2018/08/03 PHP
javascript字典探测用户名工具
2006/10/05 Javascript
Jquery方式获取iframe页面中的 Dom元素
2014/05/07 Javascript
浅谈JavaScript函数节流
2014/12/09 Javascript
使用百度地图api实现根据地址查询经纬度
2014/12/11 Javascript
jquery实现拖拽调整Div大小
2015/01/30 Javascript
第六章之辅组类与响应式工具
2016/04/25 Javascript
hovertree插件实现二级树形菜单(简单实用)
2016/12/28 Javascript
JavaScript自定义浏览器滚动条兼容IE、 火狐和chrome
2017/01/05 Javascript
jQuery电话号码验证实例
2017/01/05 Javascript
基于Bootstrap 3 JQuery及RegExp的表单验证功能
2017/02/16 Javascript
详解webpack 多入口配置
2017/06/16 Javascript
Nodejs核心模块之net和http的使用详解
2019/04/02 NodeJs
JS实现的字符串数组去重功能小结
2019/06/17 Javascript
Vue.js数字输入框组件使用方法详解
2019/10/19 Javascript
JS实现随机抽取三人
2019/11/06 Javascript
[02:00]DAC2018主宣传片——龙征四海,剑问东方
2018/03/20 DOTA
[45:52]完美世界DOTA2联赛PWL S3 Forest vs INK ICE 第二场 12.09
2020/12/12 DOTA
python列出目录下指定文件与子目录的方法
2015/07/03 Python
python代码编写计算器小程序
2020/03/30 Python
使用django的ORM框架按月统计近一年内的数据方法
2019/07/18 Python
Python通过Pillow实现图片对比
2020/04/29 Python
HTML5 拖放(Drag 和 Drop)详解与实例代码
2017/09/14 HTML / CSS
String、StringBuffer、StringBuilder有区别
2015/09/18 面试题
口腔医学技术应届生求职信
2013/11/09 职场文书
简单的项目建议书模板
2014/03/12 职场文书
《谁的本领大》教后反思
2014/04/25 职场文书
绘画专业自荐信
2014/07/04 职场文书
工作失职自我检讨书
2015/05/05 职场文书
通用员工手册范本
2015/05/14 职场文书
小学运动会加油词
2015/07/18 职场文书
详解MySQL 用户权限管理
2021/04/20 MySQL
CI Games宣布《堕落之王2》使用虚幻引擎5制作 预计将于2023年正式发售
2022/04/11 其他游戏