diff options
author | Leonard Richardson <leonardr@segfault.org> | 2013-10-01 21:55:22 -0400 |
---|---|---|
committer | Leonard Richardson <leonardr@segfault.org> | 2013-10-01 21:55:22 -0400 |
commit | 6a06b9d998ea9502a93db14ebb65395b20c1b30f (patch) | |
tree | 0999ebae9dcc14522bdbb8bb1a3289d7d7498cbf /bs4/builder/_htmlparser.py | |
parent | 623d8c13b79003921fd13b59328d0c28e01eabd0 (diff) |
Fixed a bug in which short Unicode input was improperly encoded to ASCII when checking whether or not it was a file on
disk. [bug=1227016]
Diffstat (limited to 'bs4/builder/_htmlparser.py')
-rw-r--r-- | bs4/builder/_htmlparser.py | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/bs4/builder/_htmlparser.py b/bs4/builder/_htmlparser.py index 4b80f79..ca8d8b8 100644 --- a/bs4/builder/_htmlparser.py +++ b/bs4/builder/_htmlparser.py @@ -45,7 +45,15 @@ HTMLPARSER = 'html.parser' class BeautifulSoupHTMLParser(HTMLParser): def handle_starttag(self, name, attrs): # XXX namespace - self.soup.handle_starttag(name, None, None, dict(attrs)) + attr_dict = {} + for key, value in attrs: + # Change None attribute values to the empty string + # for consistency with the other tree builders. + if value is None: + value = '' + attr_dict[key] = value + attrvalue = '""' + self.soup.handle_starttag(name, None, None, attr_dict) def handle_endtag(self, name): self.soup.handle_endtag(name) |