]> granicus.if.org Git - python/commitdiff
clean up the API a little; exceptions are defined by this module
authorFred Drake <fdrake@acm.org>
Thu, 9 Sep 2004 02:24:13 +0000 (02:24 +0000)
committerFred Drake <fdrake@acm.org>
Thu, 9 Sep 2004 02:24:13 +0000 (02:24 +0000)
(needs documentation)

Lib/htmllib.py

index 94492a6da2417be91b79a8d04f6d73f6b567c29f..24a2e2f3c71ff45f9649519a81cf46cc99162028 100644 (file)
@@ -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