Forum-Informationsfreiheit / offenewahlen_api

API of austrian election results .
https://offenewahlen.at
MIT License
17 stars 7 forks source link

Corrected UTF8 Text-File Import #203

Closed frocentus closed 7 years ago

frocentus commented 7 years ago

Added UTF8 Import for Textfiles (JSON and Plain-Textfiles)

Unter Windows, Python und Posgres wurden die Daten mit falsche Encodierung und die Datenbank geschrieben. Ich habe das Script so umgebaut, dass die Textdateien explizit mit UTF8-Codierung eingelesen werden, der Import funktioniert nun Korrekt.

tobias47n9e commented 7 years ago

Danke! Schaut gut aus.

Ich hab hier (https://docs.python.org/3.6/library/codecs.html) ein bißchen über utf-8-sig nachgelesen. Ganz verstehe ich nicht wie das funktioniert. Falls es nochmal Probleme macht brauchen wir einfach noch mehr Tests.

Ich hab mal mit chardet geschaut was unsere Dateien sein könnten:

>>> import chardet
>>> data = open('elections.json', 'rb')
>>> chardet.detect(data.read())
{'encoding': 'ISO-8859-2', 'confidence': 0.7938148569659349}
>>> data = open('parties.json', 'rb')
>>> chardet.detect(data.read())
{'encoding': 'utf-8', 'confidence': 0.99}
>>> data = open('municipalities_20170101_2.json', 'rb')
>>> chardet.detect(data.read())
{'encoding': 'utf-8', 'confidence': 0.99}