python类库31[DOM+SAX解析XML和HTML]
来源:互联网 发布:ug编程步骤 编辑:程序博客网 时间:2024/06/11 10:51
Standard Generalized Markup Language (SGML)即标准通用标记语言
Hypertext Markup Language (HTML)超文本标识语言
Extensible Markup Language (XML)可扩展标识语言
SGML,HTML,XML 都可以使用以下的SAX和DOM方式来解析 :
SGML是现时常用的超文本格式的最高层次标准,是可以定义标记语言的元语言,甚至可以定义不必采用< >的常规方式。
HTML和XML都是衍生于SGML,HTML是SGML的一个应用,不能用来定义其他的标记语言。
一 SAX 与 DOM
SAX (Simple API for XML) 和 DOM (Document Object Model)是处理XML文件的两种方法。
SAX是一种基于事件驱动的API。利用SAX解析XML文档牵涉到两个部分:解析器和事件处理器。解析器负责读取XML文档,并向事件处理器发送事件,如元素开始跟元素结束事件;而事件处理器则负责对事件作出相应,对传递的XML数据进行处理。
DOM 可以让你以分层次对象模型来访问储存在XML文档中的信息。DOM生成一棵节点树(以XML文档的结构和信息为基础)你可以通过这棵树来访问你的信息。在XML文档中的文本信息转变成一组树的节点。DOM本质上是节点的集合。
通过对SAX与DOM的分析,它们各有自己的不同应用领域。
SAX适于处理下面的问题:
1、对大型文件进行处理;
2、只需要文件的部分内容,或者只需从文件中得到特定信息。
3、想建立自己的对象模型的时候。
DOM适于处理下面的问题:
1、需要对文件进行修改;
2、需要随机对文件进行存取。
二 读写XML
python31高级[使用minidom读写xml]
python31高级[使用xml.etree.ElementTree读写xml]
python31高级[使用SAX来解析xml]
三 解析html的libs:
由于html对语法的要求不是那么的严格,且标签相对固定, 所以相比XML,解析器要求更加智能,且更加方便地处理html的标签。
http://lxml.de/
http://www.crummy.com/software/BeautifulSoup/
http://code.google.com/p/html5lib/
完!
- python类库31[DOM+SAX解析XML和HTML]
- python类库31[DOM+SAX解析XML和HTML]
- 解析xml:DOM 和 SAX
- XML 解析---dom解析和sax解析
- DOM 解析和SAX解析 XML 文档
- XML的SAX解析和DOM解析
- dom,sax解析xml
- XML-DOM SAX解析
- xml解析,dom/sax
- SAX和DOM解析XML区别
- 浅述DOM和SAX解析XML
- DOM和SAX解析XML的区别
- Android SAX和DOM解析XML文件
- SAX和DOM解析XML区别
- XML 的 解析 :DOM 和 SAX
- SAX和DOM解析XML区别
- 关于XML文档解析(DOM和SAX)
- DOM和SAX的XML解析
- python技巧32[常用技巧集]
- 免费的.NET混淆和反编译工具
- 使用devenv/MSBuild在命令行编译单个project
- python实例32[glob+rmtree来删除目录和子目录及其下所有文件]
- python类库31[使用SAX来解析xml]
- python类库31[DOM+SAX解析XML和HTML]
- Computer Browser 服务启动后又停止解决方法
- python翻译[排序高级]
- python类库32[执行外部命令]
- python语法32[global与nonlocal比较]
- python实例32[简单的HttpServer]
- python语法32[装饰器decorator]
- python语法32[闭包]
- python类库32[多线程]