Lire JSON avec Python et générer un CSV

Objectif

C'est un programme pour lire un fichier JSON, agréger le contenu et le sortir en CSV. Étant donné que le contenu agrégé change en fonction de l'objectif, je ne fais qu'un endroit pour lire et générer du JSON.

Que faire

--Afficher la boîte de dialogue de sélection de fichier --Lire le fichier JSON --Aggregate et sortie CSV

Afficher la boîte de dialogue de sélection de fichiers

Utilisez tkinter pour afficher le GUI (File Selection Dialog). Dès que vous l'exécutez, la boîte de dialogue de sélection de fichier apparaîtra, vous permettant de sélectionner uniquement les fichiers JSON.

#Importation de module
import os, tkinter, tkinter.filedialog

#Afficher la boîte de dialogue de sélection de fichier
root = tkinter.Tk()
root.withdraw()

#Rendre uniquement les fichiers json sélectionnables
fTyp = [("","*.json")]
iDir = os.path.abspath(os.path.dirname(__file__))
file = tkinter.filedialog.askopenfilename(filetypes = fTyp, initialdir = iDir)

#Vérifiez le chemin du fichier sélectionné
print(file)

Lire le fichier JSON

Vérifiez le contenu du fichier JSON lorsque vous pouvez sélectionner le fichier. Ajoutez la bibliothèque json pour lire et gérer les fichiers.

#Importation de module
import os, json, tkinter, tkinter.filedialog

#Afficher la boîte de dialogue de sélection de fichier
root = tkinter.Tk()
root.withdraw()

#Rendre uniquement les fichiers json sélectionnables
fTyp = [("","*.json")]
iDir = os.path.abspath(os.path.dirname(__file__))
file = tkinter.filedialog.askopenfilename(filetypes = fTyp, initialdir = iDir)

#Lire le fichier json
json_open = open(file, 'r', encoding="utf-8")
json_load = json.load(json_open)

#Vérifiez le contenu du fichier json
print(json_load[0])

Sortie CSV

Maintenant que nous avons lu le fichier JSON, faisons-le sortir au format CSV.

#Importation de module
import os, json, csv, tkinter, tkinter.filedialog

#Afficher la boîte de dialogue de sélection de fichier
root = tkinter.Tk()
root.withdraw()

#Rendre uniquement les fichiers json sélectionnables
fTyp = [("","*.json")]
iDir = os.path.abspath(os.path.dirname(__file__))

#Obtenir des informations sur les fichiers
file = tkinter.filedialog.askopenfilename(filetypes = fTyp, initialdir = iDir)

#Lire le fichier json
json_open = open(file, 'r', encoding='utf-8')
json_load = json.load(json_open)

#Définissez le dossier et le nom du fichier pour la sortie CSV (même emplacement et même nom que le fichier JSON lu)
folder_file = os.path.split(file)
folder = folder_file[0] #Obtenir le chemin du dossier
file_name = file.rsplit('/', 1)[1][0:-5] #Obtenir le nom du fichier
csv_file_path = folder + '/' + file_name + '.csv'

#Créer un fichier CSV (créer un nouveau s'il n'existe pas)
if not os.path.isfile(csv_file_path):
  open(csv_file_path, 'x', encoding='utf-8')

#Lire CSV en mode écrasement
csv_file = open(csv_file_path, 'w', encoding='utf-8')

#Écrire les paramètres au format CSV
w = csv.writer(csv_file, lineterminator='\n')

#Ecrire et écrire le processus d'agrégation en fonction du contenu de JSON
#w.writerow(['AAA','test','111'])← Dans le cas d'une ligne à la fois
w.writerows([['AAA','Test','111'], ['BBB','tEst','222'], ['CCC','teSt','333'], ['DDD','tesT','444']])

csv_file.close()

c'est tout. Après cela, ajoutons comme vous le souhaitez.

référence

Recommended Posts

Lire JSON avec Python et générer un CSV
Lire le fichier json avec Python, le formater et générer le json
Extraire le jeu de données bigquery et la liste des tables avec python et la sortie en CSV
[Python3] Lecture et écriture avec isoformat datetime avec json
Lire csv avec des pandas python
Lire des données json avec python
Lisez le fichier CSV avec Python et convertissez-le en DataFrame tel quel
Sortie vers un fichier csv avec Python
Encodage et décodage JSON avec python
Lire et écrire du CSV avec Python
[Python] Lisez le fichier csv et affichez la figure avec matplotlib
Entrée / sortie de données en Python (CSV, JSON)
Lire le fichier CSV avec python (Télécharger et analyser le fichier CSV)
Lire et écrire des fichiers csv avec numpy
Lire et écrire des fichiers JSON avec Python
Lire Python csv et exporter vers txt
Lire et écrire des fichiers JSON avec Python
Lisez CSV et analysez avec Pandas et Seaborn
Comment lire un fichier CSV avec Python 2/3
Sortie CSV de la recherche Google avec [Python]! 【Facile】
[Python] Utiliser JSON avec Python
Lire les données csv Python avec Pandas ⇒ Graphique avec Matplotlib
Extraire le résultat de la commande TOP avec USER et le sortir au format CSV
Lire et écrire des fichiers CSV et JSON avec Python
entrée et sortie python
Envoyer et recevoir des données d'image au format JSON en Python sur le réseau
Convertir JSON en CSV avec Python de Splunk
Lire le fichier csv Python
Exemple de lecture et d'écriture de CSV avec Python
Procédure pour charger MNIST avec python et sortie en png
[Part.3] Exploration avec Python! C'est JSON plutôt que CSV! ??
Lisez et analysez l'ensemble de données au format arff avec python scipy.io
Analyser et visualiser JSON (application Web ⑤ avec Python + Flask)
Comment convertir un fichier JSON en fichier CSV avec Python Pandas
Journal de sortie au format JSON avec journalisation standard Python
Lire et écrire des fichiers avec Slackbot ~ Développement de bot avec Python ~
[Python-pptx] Afficher les informations de police PowerPoint au format csv avec python
Programmation avec Python et Tkinter
Lire et écrire un fichier csv
Chiffrement et déchiffrement avec Python
Python et matériel - Utilisation de RS232C avec Python -
POST json avec le script Python 3
Essayez la sortie Python avec Haxe 3.2
Écrire en csv avec Python
python avec pyenv et venv
Formater json avec Vim (avec python)
Télécharger le fichier csv avec python
Lire la sortie Fortran avec python
Fonctionne avec Python et R
[Python] Lire le csv japonais avec des pandas sans caractères déformés (extraire davantage les colonnes écrites en japonais)
Écrivez facilement des conversions de classes de données JSON et Python avec quicktype et dacite
En Python, les éléments de la liste sont triés et sortis sous forme d'éléments et de multiples.
Exemple d'analyse HTTP GET et JSON avec Pepper Python
Précautions lors de la saisie à partir de CSV avec Python et de la sortie vers json pour faire exe
Communiquez avec FX-5204PS avec Python et PyUSB
Briller la vie avec Python et OpenCV
Robot fonctionnant avec Arduino et python
Installez Python 2.7.9 et Python 3.4.x avec pip.
Image en niveaux de gris et enregistrer au format csv
Réseau neuronal avec OpenCV 3 et Python 3