python xml.sax.handler.ContentHandler 的characters方法小结

来源:互联网 发布:万人网络营销软件站 编辑:程序博客网 时间:2024/06/05 09:14
今天在阅读python基础教程项目3时,卡在了ContentHandler的characters方法上。
尝试解决方法:
1.查找官方手册,只提示以下信息,不太清楚
原文提示:
 The Parser will call this method to report each chunk of
        character data. SAX parsers may return all contiguous
        character data in a single chunk, or they may split it into
        several chunks; however, all of the characters in any single
        event must come from the same external entity so that the
        Locator provides useful information
2.网上搜索,搜到这个网站还不错
PyXML学习笔记
contentHandler的一些函数都是触发式的。

ContentHandler类的方法

方法 描述
startDocument() 在文档开头触发
endDocument() 在文档结尾触发
startElement(name,attrs) 遇到开始元素时触发,name是元素名,attrs是元素属性字典
endElement(name) 遇到结束元素时触发,name是元素名
startElementNS(name,qname,attrs) 处理名字空间,遇到开始元素时触发,name是元素名,是一个元组,包含URI和本地名,如namespace:title返回(‘namespace','title')。qname是从XML中标识的原始元素名,attrs是元素属性字典。
endElementNS(name,qname) 处理名字空间,遇到结尾元素时触发,name和qname的含义同上
characters(content) 遇到字符数据时触发
processingInstruction(target,data) 在标识处理指令时触发
skippedEntity(name) 在跳过实体时触发

3.查看源代码,关于characters方法只有一个描述,parser方面看不太懂
现在有个疑问,当碰到一个新的python函数时,是否有地方查询其具体用法?
4.下面是自己对characters函数的测试
函数characters:碰到字符串触发(字符串可能包括空格字符串,这要当心)
比如对一个XML文件,进行处理时,传入characters的字符串可能包含空格。
0 0
原创粉丝点击