charset = None # ...try charset from HTML
for p in parsers:
- parser = p(filename, charset)
+ charsets = [universal_charset, DEFAULT_CHARSET]
+ if charset not in charsets:
+ charsets.insert(0, charset)
+ parser = None
+ for c in charsets:
+ try:
+ parser = p(filename, c)
+ except UnicodeEncodeError:
+ pass
if parser:
break
else: