diff options
author | Leonard Richardson <leonard.richardson@canonical.com> | 2012-01-20 13:56:02 -0500 |
---|---|---|
committer | Leonard Richardson <leonard.richardson@canonical.com> | 2012-01-20 13:56:02 -0500 |
commit | 45fd6b551dccc85f01061f26642614ceebf39843 (patch) | |
tree | 1451f49eff5a8a5b4c13037f8616bee199985fe7 /bs4/builder/_htmlparser.py | |
parent | f7e2daa88f5d9001e171d65b122a3bdc7052f955 (diff) |
Got the test suite to pass on Python 3.2 (skipping the html5lib stuff, which doesn't seem to have Python 3 support yet.)
Diffstat (limited to 'bs4/builder/_htmlparser.py')
-rw-r--r-- | bs4/builder/_htmlparser.py | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/bs4/builder/_htmlparser.py b/bs4/builder/_htmlparser.py index c293d9e..f9476cd 100644 --- a/bs4/builder/_htmlparser.py +++ b/bs4/builder/_htmlparser.py @@ -4,7 +4,12 @@ __all__ = [ 'HTMLParserTreeBuilder', ] -from HTMLParser import HTMLParser +try: + from html.parser import HTMLParser + CONSTRUCTOR_TAKES_STRICT = True +except ImportError, e: + from HTMLParser import HTMLParser + CONSTRUCTOR_TAKES_STRICT = False from bs4.element import ( CData, Comment, @@ -28,6 +33,11 @@ class HTMLParserTreeBuilder(HTMLParser, HTMLTreeBuilder): is_xml = False features = [HTML, STRICT, HTMLPARSER] + def __init__(self, *args, **kwargs): + if CONSTRUCTOR_TAKES_STRICT: + kwargs['strict'] = True + return super(HTMLParserTreeBuilder, self).__init__(*args, **kwargs) + def prepare_markup(self, markup, user_specified_encoding=None, document_declared_encoding=None): """ |