[PYTHON] Verstümmelte Zeichen beim Hochladen von CSV in Google Cloud Storage → Gelöst von json

Fazit

Als ich die in Storage hochgeladene CSV in ison änderte, waren die Zeichen nicht mehr verstümmelt.

Annahme

In der offiziellen Dokumentation finden Sie Informationen zum Hochladen von Dateien mit der Speicher-API https://cloud.google.com/storage/docs/uploading-objects#storage-upload-object-python

Versuchsergebnis

Für CSV

Originale Daten

Lokal erstellte CSV (UTF-8)

storage_upload.csv


supplements,Tablette
...

Ergebnis

CSV in den Speicher hochgeladen

storage_upload.csv


supplements,骭  蜑
...

Für json

Originale Daten

storage_upload.json


{{"name":"supplements","Name":"Tablette"},{...}}

Ergebnis

Gleich wie die Originaldaten

storage_upload.json


{{"name":"supplements","Name":"Tablette"},{...}}

Bemerkungen

writeJson.py


import json
class WriteJson:
    def __init__(self, ad_data, new_file,file_name):
        self.ad_data = ad_data
        self.new_file = new_file
        self.file_name = file_name
    def write(self):
        method = "w" if self.new_file else "a"
        f = open(self.file_name, method, encoding="utf-8")
        json.dump(self.ad_data,f,ensure_ascii=False)

→ Beachten Sie, dass die Ausgabedaten in Form von "\ uXXXX" maskiert werden, es sei denn, sure_ascii = False wird in der letzten Zeile gesetzt.

        json.dump(self.ad_data,f)→ Es wird entkommen

[Python] JSON-Datei formatieren und sichern

Arbeitsnotizen: Artikelhintergrund

・ Scraping mit Python → Der folgende Fehler ist beim Ausführen der Schleifenverarbeitung zum Senden der CSV an BigQuery aufgetreten. "10054, 'Die bestehende Verbindung zum Remote-Host wurde zwangsweise geschlossen'" → Alternativ habe ich beschlossen, die Datei einmal in den Cloud-Speicher hochzuladen. → Als ich eine in UTF-8 codierte CSV in den Speicher hochgeladen habe, waren alle japanischen Zeichen verstümmelt. → Selbst wenn Sie ab dem 06. November 2019 suchen, trifft dies nicht https://stackoverflow.com/questions/45394157/google-cloud-storage-not-handling-utf-8-filenames https://groups.google.com/forum/?hl=ja#!topic/google-app-engine-japan/0NHIIqbLx9w

Wenn Sie einen anderen guten Weg als json kennen, lassen Sie es mich bitte wissen __ (._.) _


Es tut uns leid, Sie zu belästigen, aber bitte lassen Sie es uns in diesem Artikel oder im folgenden Konto wissen!

\ Follow Me! / ** * Qiita-Konto * ** ** * Twitter-Konto * **

Recommended Posts

Verstümmelte Zeichen beim Hochladen von CSV in Google Cloud Storage → Gelöst von json
Beseitigen Sie verstümmelte japanische Zeichen in JSON-Daten, die von der API erfasst wurden.
So beheben Sie die Probleme beim Lesen von Google Cloud Storage-Bildern von Django, die auf GAE bereitgestellt wurden