xml.sax
库提供了一系列模型用于在Python中实现SAX接口。
模块本身提供了SAX异常和便利函数,经常并SAX API用户使用。
xml.sax模块在面对恶意数据时,并不安全。如果你需要解析非信任或未验证数据,请阅读XML 漏洞.
-
XML是什么
可扩展标记语言(维基百科 :Extensible Markup Language,简称:XML)是一种标记语言。
标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。
如何定义这些标记,既可以选择国际通用的标记语言,比如HTML,也可以使用像XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性。
XML是从标准通用标记语言(SGML)中简化修改出来的。它主要用到的有可扩展标记语言、可扩展样式语言(XSL)、XBRL和XPath等。
-
SAX是什么
Simple API for XML(维基百科 :SAX)是个循序存取XML的解析器API。
SAX提供一个机制从XML文件读取资料。
它是除了文档对象模型(DOM)的另外一种流行选择。
-
便利函数
-
xml.sax.make_parser(parser_list=[])
-
xml.sax.parse(filename_or_stream, handler, error_handler=handler.ErrorHandler())
创建一个SAX解析器,并用来解析文档。
这个以
filename_or_stream
参数传入的文档可以是一个文件名或文件对象。handler参数是SAX ContentHandler实例。如果给定
error_handler
,则handler
必须是一个SAX
ErrorHandler
实例。如果忽略,则报错SAXParseException
。没有返回值。
-
xml.sax.parseString(string, handler, error_handler=handler.ErrorHandler())
与*parse()*类似。解析以参数形式传递的字符串。
string
必须时str
实例或 bytes-like 对象.
-
- 维基百科 :
Extensible Markup Language
,简称:XML
- 维基百科 :
SAX
- Python:使用基于事件驱动的SAX解析XML
- 使用 SAX 处理 XML 文档