xml.sax.saxutils (Structured Markup) - Python 中文开发手册
2.0版本中的新功能。
模块xml.sax.saxutils包含许多在创建SAX应用程序时通常很有用的类和函数,无论是直接使用还是作为基类。
xml.sax.saxutils.escape(data[, entities])
转义'&','<'和'>'一串数据。
您可以通过传递字典作为可选实体参数来转义其他数据字符串。键和值必须全部是字符串; 每个键将被替换为其对应的值。字符'&','<'与'>'总是被转义,即使实体 已经提供。
xml.sax.saxutils.unescape(data[, entities])
转义 '&','<'和'>'一串数据。
通过传递字典作为可选实体参数,您可以忽略其他数据字符串。键和值必须全部是字符串; 每个键将被替换为其对应的值。'&','<'并且'>'始终未转义,即使提供了实体。
2.3版本的新功能。
xml.sax.saxutils.quoteattr(data[, entities])
类似于escape(),但也准备要用作属性值的数据。 返回值是带有任何额外所需替换的数据的引用版本。 quoteattr()将根据数据内容选择一个引号字符,试图避免编码字符串中的任何引号字符。 如果单引号和双引号字符都在数据中,则双引号字符将被编码,数据将用双引号括起来。 结果字符串可以直接用作属性值:
>>> print "<element attr=%s>" % quoteattr("ab ' cd " ef") <element attr="ab ' cd " 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()方法的多态源参数实现。
Python 中文开发手册