有没有办法从内容处理程序中停止解析?还是抛出异常是唯一的方法?
请注意,我正在使用 xml.sax.parseString。
最佳答案
记录了 Python 的 SAX 内容处理程序的完整 API here : 如您所见,信息流完全是单向的,从解析器到处理程序——处理程序无法将信息提供回解析器(例如是否应终止解析)。
因此,正如您所猜测和评论者所证实的那样,“控制流异常”确实是实现这种“过早终止”的唯一方法。正如评论者所说,毕竟还算不错。
关于 python 萨克斯 : is there a way to halt the parsing from inside a content handler?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1523225/