#   解析XML内容
from xml.sax import parse               #   分析文本用的模块
from xml.sax import ContentHandler      #   内容处理类
# <root>
#     <student id='张三'>
#         <name>张三</name>
#         <sex>男</sex>
#         <age>20</age>
#     </student>
class MyPar(ContentHandler):def __init__(self):ContentHandler.__init__(self)self.tag_name   = ''    # 元素标签
self.count_name = ''    # 张三
self.count_sex  = ''    # 性别
self.count_age  = ''    # 年龄
def startElement(self, name, attrs):self.tag_name = name    #   获取标签名
if self.tag_name == 'student':print('*'*20)print("id:",attrs['id'])def characters(self, content):if self.tag_name == 'name':self.count_name = contentif self.tag_name == 'sex':self.count_sex = contentif self.tag_name == 'age':self.count_age = contentdef endElement(self, name):if name == 'name':print("   name:",self.count_name)if name == 'sex':print("    sex:",self.count_sex)if name == 'age':print("    age:", self.count_age)self.tag_name = ''
if __name__ == '__main__':p = MyPar()parse('stu.xml',p)
from xml.sax import parse               #   导入解析包(分析文本用的模块)
from xml.sax import ContentHandler      #   导入内容处理类
# <root name="中国">
#   <province name="北京市">
#     <city name="北京市" index="1">
#       <area name="东城区" index="1" />
class MyHader(ContentHandler):def __init__(self):ContentHandler.__init__(self)self.tag_name = ''
def startElement(self, name, attrs):self.tag_name = nameif self.tag_name == 'root':print("国家:",attrs['name'])if self.tag_name == 'province':print("  省:",attrs['name'])if self.tag_name == "city":print("      市:",attrs['name'],attrs['index'])if self.tag_name == "area":print("          区(县):",attrs['name'],attrs['index'])def endElement(self, name):self.tag_name = ''
if __name__ == '__main__':p = MyHader()parse('city.xml',p)

转载于:https://www.cnblogs.com/Tridents/p/9123416.html

Python的XML解析!相关推荐

  1. Python之XML解析详解

    什么是XML? XML 指可扩展标记语言(eXtensible Markup Language). XML 被设计用来传输和存储数据. XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这 ...

  2. python中xml解析sax_python使用SAX解析xml

    python 标准库包含SAX解析器,SAX用事件驱动模型,通过在解析XML的过程中触发一个个的事件并调用用户定义的回调函数来处理XML文件 在python中使用sax方式处理xml要先引入xml.s ...

  3. python中xml解析sax_Python解析xml大文件[sax]

    使用到的包:xml.sax [文档]() 需求 读取xml数据文件,文件较大,需要实时处理插入到数据库 xml文档 100000 男 北京,海淀区 437 1989 333 242 null 大学 1 ...

  4. python代码示例下载-python下xml解析库lxml最新版下载安装以及代码示例

    abc 123 def 456 ghi

  5. python读取xml文件有哪些方法_深入解读Python 解析xml的几种方式

    一,概述 在XML解析方面,Python贯彻了自己开箱即用batteries included的原则, 在自带的标准库中,python提供了大量可以用于处理XML语言的包和工具 二,正文 1,什么是X ...

  6. python 使用sax 解析xml 文件

    这里不是说xml 的所以如果xml 不了解,可以百度大致看下即可, SAX知识了解 SAX (simple API for XML )  有解析器和事件处理器 解析器负责读取XML文档,并向事件处理器 ...

  7. python之XML文件解析

    python对XML的解析 常见的XML编程接口有DOM和SAX,这两种接口处理XML文件的方式不同,当然使用场合也不同. python有三种方法解析XML,分别是SAX,DOM,以及ElementT ...

  8. Python 爬虫笔记、多线程、xml解析、基础笔记(不定时更新)

    1  Python学习网址:http://www.runoob.com/python/python-multithreading.html     注意高级中的xml解析和多线程 2  参考笔记 虫师 ...

  9. python对XML的解析

    python有三种方法解析XML,SAX,DOM,以及ElementTree ###1.SAX (simple API for XML )        pyhton 标准库包含SAX解析器,SAX是 ...

最新文章

  1. idea类模版,创建时生成一句歌词
  2. electron 利用 electron-builder实现自动更新
  3. hdu 1753大小数相加
  4. Python_基础_5
  5. angular input_Angular 秒杀其它框架的设计之美(一)
  6. Bootstrap全局css样式_代码
  7. jquery.dataTable.js 绘制表格使用详解
  8. MySQL 批量生成 SQL 脚本语句解决实际的业务需求/如何拼接字符串/拼接字符串的 SQL 语句
  9. 从零实现一个3D目标检测算法(3):PointPillars主干网实现(持续更新中)
  10. Mybatis(20)注解实现二级缓存
  11. input 输入速度和方向判断、搜索功能的延迟请求
  12. Linux替代Windows系统软件比拼
  13. JavaScript实用代码片段
  14. spring纯注解+libreoffice
  15. Sosoapi本地项目搭建
  16. android apk 微信登入_Android实现使用微信登录第三方APP的方法
  17. winrm java客户端_winrm service
  18. XPO 的三篇介绍文章。
  19. Django REST Framework中的Serializer relations
  20. 数据分析之学术前沿分析 任务1:论文数据统计

热门文章

  1. java中方法的参数传递
  2. 开发人员职位:对编程语言Python的需求明显下降
  3. android打开项目更换版本,android1.6项目,换成其他包的方法,及修改默认启动虚拟机的版本...
  4. 死信交换机与死信队列
  5. application context not configured for this file?
  6. 030_自己实现一个HashSet
  7. 073_JS JSON
  8. 学生兴趣爱好管理系统 c语言,《学生兴趣爱好系统.doc
  9. Android绘制自定义控件,Android自定义控件绘制基本图形基础入门
  10. JavaWeb-JavaMail邮件开发