From: Fred Drake Date: Thu, 9 Sep 2004 02:24:13 +0000 (+0000) Subject: clean up the API a little; exceptions are defined by this module X-Git-Tag: v2.4b1~315 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=583359ed2e9696bcb1ca0223a4763074c19756d6;p=python clean up the API a little; exceptions are defined by this module (needs documentation) --- diff --git a/Lib/htmllib.py b/Lib/htmllib.py index 94492a6da2..24a2e2f3c7 100644 --- a/Lib/htmllib.py +++ b/Lib/htmllib.py @@ -4,13 +4,18 @@ See the HTML 2.0 specification: http://www.w3.org/hypertext/WWW/MarkUp/html-spec/html-spec_toc.html """ +import sgmllib -from sgmllib import SGMLParser from formatter import AS_IS -__all__ = ["HTMLParser"] +__all__ = ["HTMLParser", "HTMLParseError"] -class HTMLParser(SGMLParser): + +class HTMLParseError(sgmllib.SGMLParseError): + """Error raised when an HTML document can't be parsed.""" + + +class HTMLParser(sgmllib.SGMLParser): """This is the basic HTML parser class. It supports all entity names required by the XHTML 1.0 Recommendation. @@ -28,11 +33,14 @@ class HTMLParser(SGMLParser): the parser. """ - SGMLParser.__init__(self, verbose) + sgmllib.SGMLParser.__init__(self, verbose) self.formatter = formatter + def error(self, message): + raise HTMLParseError(message) + def reset(self): - SGMLParser.reset(self) + sgmllib.SGMLParser.reset(self) self.savedata = None self.isindex = 0 self.title = None