在线文档教程

xml.sax.saxutils

xml.sax.saxutils - SAX实用工具

2.0版本中的新功能。

模块xml.sax.saxutils包含许多在创建SAX应用程序时通常很有用的类和函数,无论是直接使用还是作为基类。

xml.sax.saxutils.escape(data[, entities])

转义'&','<'和'>'一串数据。

您可以通过传递字典作为可选实体参数来转义其他数据字符串。键和值必须全部是字符串; 每个键将被替换为其对应的值。字符'&','<'与'>'总是被转义,即使实体 已经提供。

xml.sax.saxutils.unescape(data[, entities])

转义 '&amp;''&lt;''&gt;'一串数据。

通过传递字典作为可选实体参数,您可以忽略其他数据字符串。键和值必须全部是字符串; 每个键将被替换为其对应的值。'&amp''&lt;'并且'&gt;'始终未转义,即使提供了实体

2.3版本的新功能。

xml.sax.saxutils.quoteattr(data[, entities])

类似于escape(),但也准备要用作属性值的数据。 返回值是带有任何额外所需替换的数据的引用版本。 quoteattr()将根据数据内容选择一个引号字符,试图避免编码字符串中的任何引号字符。 如果单引号和双引号字符都在数据中,则双引号字符将被编码,数据将用双引号括起来。 结果字符串可以直接用作属性值:

>>> print "<element attr=%s>" % quoteattr("ab ' cd \" ef") <element attr="ab ' cd &quot; ef">

当使用引用具体语法为HTML或任何SGML生成属性值时,此函数很有用。

2.2版本中的新功能。

class xml.sax.saxutils.XMLGenerator([out[, encoding]])

该类通过将SAX事件写回XML文档来实现ContentHandler接口。 换句话说,使用XMLGenerator作为内容处理程序将重现正在解析的原始文档。 out应该是一个类似文件的对象,默认为sys.stdout。 encoding是默认为'iso-8859-1'的输出流的编码。

class xml.sax.saxutils.XMLFilterBase(base)

这个类被设计为位于XMLReader客户端应用程序的事件处理程序之间。默认情况下,它没有做任何事情,只是将请求传递给读写器并将事件传递给未经修改的处理程序,但子类可以覆盖特定的方法以在事件流或配置请求通过时修改它们。

xml.sax.saxutils.prepare_input_source(source[, base])

该函数接受一个输入源和一个可选的基本URL,并返回一个完全解析的InputSource对象,以供读取。 输入源可以以字符串,文件类对象或InputSource对象的形式给出; 解析器将使用此函数将parse()方法的多态源参数实现。