JSON til CSV Python

JSON til CSV Python
“JSON eller JavaScript Object Notation er et datautvekslingsformat som er mye vedtatt av mange applikasjoner. Enten du jobber med servere, vil du til slutt komme over JSON.

CSV- eller komma -separerte verdier er et filformat som brukes til å lagre tabelldata som et Excel -ark. I stedet for bokser bruker den imidlertid et komma for å skille forskjellige verdier og poster. Det er vanlig når du eksporterer en stor samling av tekst som er kompatibel på tvers av systemer.

Selv om de kan virke annerledes, deler JSON og CSV noen fellestrekk som vi ikke vil komme inn på på dette tidspunktet.

Imidlertid kan du finne deg selv i en situasjon der du trenger å eksportere JSON -dataene dine til en CSV -fil.

I denne opplæringen lærer vi hvordan du gjør akkurat det ved hjelp av Python og forskjellige innebygde moduler.”

La oss komme i gang.

Metode 1: Bruke Pandas To_CSV () FUNTION

En av de vanligste metodene for å konvertere et JSON -objekt til et CSV -format er Pandas to_csv () -funksjonen.

Før vi kommer i gang, la oss utarbeide JSON -dataene våre. I vårt eksempel skal vi bruke en JSON -fil som vist nedenfor:

[

"id": 1,
"First_name": "Jada",
"Last_name": "deporter",
"E-post": "[email protected] ",
"kjønn kvinnelig",
"ip_address": "68.40.159.153 "
,

"id": 2,
"First_name": "Vallie",
"Last_name": "Skitt",
"E -post": "[email protected]",
"kjønn kvinnelig",
"ip_address": "155.192.158.152 "
,

"ID": 3,
"First_name": "gutt",
"Last_name": "Batter",
"E -post": "[email protected] ",
"Kjønn": "Bigender",
"ip_address": "105.168.162.19 "
,

"ID": 4,
"First_name": "Sari",
"Last_name": "Wilkison",
"E -post": "[email protected] ",
"kjønn kvinnelig",
"ip_address": "227.193.140.31 "
,

"ID": 5,
"First_name": "OnoFredo",
"Last_name": "Hannam",
"E -post": "[email protected] ",
"Kjønn Mann",
"ip_address": "84.54.102.193 "

]

Bruk gjerne dine foretrukne JSON -data. Når vi har dataene våre, kan vi lese dem og eksportere dem til CSV, som vist i koden nedenfor:

Importer pandaer som PD
Importer JSON
med åpen ('net_info.json ',' r ') som f:
data = json.belastning (f)
df = pd.json_normalize (data)
df.to_csv ('net_info.CSV ')

I ovennevnte teknikk starter vi med å importere pandaene og JSON -modulene. Vi leste deretter JSON -filen og lagrer den som JSON -objekt ved hjelp av JSON.Last () Funksjon.

Vi gir deretter JSON -objektet til JSON_Normalize () -funksjonen, som skaper en Pandas DataFrame.

Derfra kaller vi TO_CSV () -funksjonen og gir filnavnet. Dette lagrer dataene i CSV -format i den spesifiserte filen.

De resulterende dataene er som vist nedenfor:

,id, første_navn, siste_navn, e -post, kjønn, ip_address
0,1, Jada, deport, [email protected], kvinne, 68.40.159.153
1,2, Vallie, Skitt, [email protected], kvinne, 155.192.158.152
2,3, gutt, røren, [email protected], bigender, 105.168.162.19
3,4, Sari, Wilkison, [email protected], kvinne, 227.193.140.31
4,5, OnoFredo, Hannam, [email protected], mann, 84.54.102.193

Dette er en av de beste metodene for å konvertere JSON -data til CSV. Dette er fordi Pandas 'evne til å håndtere store datamengder er effektiv for store datasett.

Metode 2: Bruke Pythons CSV -modul

Vi kan også bruke Pythons CSV -modul for å konvertere et JSON -objekt til CSV -data. Tenk på eksemplet nedenfor:

Importer CSV
Importer JSON
med åpen ('net_info.json ',' r ') som f:
json_obj = json.belastning (f)
med åpen ('net_info.csv ',' w ') som f:
WR = CSV.Dictwriter (F, FieldNames = JSON_OBJ [0].Keys ())
wr.WritHeader ()
wr.Writerows (JSON_OBJ)

Ovennevnte metode er veldig grei. Vi starter med å importere CSV- og JSON -modulene.

Deretter bruker vi den åpne funksjonen for å lese JSON -filen og lagre den i et JSON -objekt.

I neste trinn bruker vi den åpne funksjonen til å skrive til en CSV -fil. Python vil opprette denne filen hvis den ikke eksisterer. Ved hjelp av Dictwriter -funksjonen fra CSV -modulen oppretter vi et objekt vi kan bruke for å skrive dataene i filen. I dette tilfellet refererer feltnavnet til nøklene som brukes av Writerows () -funksjonen for å skrive dataene.

Å kjøre koden over skal opprette CSV -formatet til JSON -objektet som vist:

id, første_navn, siste_navn, e -post, kjønn, ip_address
1, Jada, deport, [email protected], kvinne, 68.40.159.153
2, Vallie, Skitt, [email protected], kvinne, 155.192.158.152
3, gutt, røren, [email protected], bigender, 105.168.162.19
4, Sari, Wilkison, [email protected], kvinne, 227.193.140.31
5, OnoFredo, Hannam, [email protected], mann, 84.54.102.193

Konklusjon

I denne artikkelen oppdaget du to hovedmetoder for å konvertere et JSON -objekt til CSV ved hjelp av Pandas og Pythons CSV -modul.

Takk for at du leste!!