| author | raph |
| Tue, 03 Aug 2010 18:34:14 +0200 | |
| changeset 306 | 3ee97f4fd0aa |
| parent 236 | 725653080973 |
| permissions | -rw-r--r-- |
import chardet import re def to_unicode(input): if type(input) == str: res = None encodings = ['utf8', 'latin1'] doc_enc = chardet.detect(input)['encoding'] if doc_enc: encodings = [doc_enc,] + encodings for encoding in encodings: try: res = unicode(input, encoding) break; except UnicodeDecodeError: pass if not res: raise Exception('UnicodeDecodeError: could not decode') return res return input # strip carriage returns def strip_cr(input): return re.sub('\r\n|\r|\n', '\n', input)