diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2017-07-20 17:28:52 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2017-07-20 17:28:52 +0200 |
commit | 1b246239c77b23c5b8d062057d2bf885716a0e15 (patch) | |
tree | 3b8539fd9a95555c6154b4a00f4e31b9693d1768 /ishtar_common/models.py | |
parent | 4aa6e59b2968e14e9f111fa4f3fceb874c91ca4b (diff) | |
parent | c89fd76e88e9d345399d7565803fa3b6c0e7fa21 (diff) | |
download | Ishtar-1b246239c77b23c5b8d062057d2bf885716a0e15.tar.bz2 Ishtar-1b246239c77b23c5b8d062057d2bf885716a0e15.zip |
Merge branch 'master' into v0.9
Diffstat (limited to 'ishtar_common/models.py')
-rw-r--r-- | ishtar_common/models.py | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/ishtar_common/models.py b/ishtar_common/models.py index 5c84447a4..e49044cfd 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -2464,20 +2464,21 @@ class Import(models.Model): tmpdir = tempfile.mkdtemp(prefix='tmp-ishtar-') imported_file = z.extract(filename, tmpdir) - with open(imported_file) as csv_file: - encodings = [self.encoding] - encodings += [coding for coding, c in ENCODINGS] - for encoding in encodings: - try: + encodings = [self.encoding] + encodings += [coding for coding, c in ENCODINGS + if coding != self.encoding] + for encoding in encodings: + try: + with open(imported_file) as csv_file: vals = [line for line in unicodecsv.reader(csv_file, encoding=encoding)] if tmpdir: shutil.rmtree(tmpdir) + print(encoding, imported_file, vals[0]) return vals - except UnicodeDecodeError: - if encoding != encodings[-1]: - csv_file.seek(0) + except UnicodeDecodeError: + print(encoding, encodings) if tmpdir: shutil.rmtree(tmpdir) return [] |