Kā Python konvertēt JSON uz CSV

Sieviete, kas kodē html un programmē uz ekrāna, klēpjdators, tīmeklis, izstrādātājs.

Kā Python konvertēt JSON uz CSV

Attēla kredīts: oatawa/iStock/GettyImages

Jūs varat konvertēt JSON uz CSV Python programmēšanas valodā izmantojot valodas komplektācijā iekļautās iebūvētās bibliotēkas. Varat veikt cilpu caur JSON objektu un izvadīt tā atslēgas un vērtības kā rindas komatatdalītā vērtību failā. Ņemiet vērā, ka ne visus JSON failus var viegli attēlot kā vienu CSV failu, tāpēc atkarībā no formāta, iespējams, būs jāizmanto vairāki CSV faili, lai lietderīgi attēlotu visus datus.

JSON un CSV izpratne

JSON un CSV faili ir divi izplatīti veidi, kā attēlot digitālos datus. JSON apzīmē JavaScript objektu apzīmējums, un tas ir veids, kā attēlot datus kā ligzdotu atslēgu kartējumu vērtībām, kā arī datu sarakstus. To iedvesmojis tas, kā dati tiek attēloti JavaScript programmēšanas valodā, taču daudzām mūsdienu programmēšanas valodām, tostarp Python, ir rīki JSON datu apstrādei.

Dienas video

A ar komatu atdalīta vērtība fails ir vēl viens veids, kā attēlot strukturētus datus. Šie faili bieži tiek izmantoti kopā ar izklājlapām un līdzīga veida programmām, tādēļ, ja vēlaties

importējiet JSON programmā Excel var būt noderīgi vispirms to pārveidot par CSV failu. Parasti CSV failos faila augšdaļā ir ietvertas kolonnu galvenes, kas norāda, kas ir saglabāts katrā kolonnā. Pēc tam katra faila rindiņa sastāv no vairākām vērtībām — viena katrai kolonnai, atdalītas ar komatiem. Ir īpaši noteikumi datu apstrādei ar komatiem.

Tāpat kā ar JSON failiem, daudzās programmēšanas valodās, tostarp Python, ir daudz rīku CSV failu ģenerēšanai un lasīšanai.

Konvertējiet JSON uz CSV

Varat pārveidot JSON par CSV, izmantojot Python iebūvētās JSON un CSV bibliotēkas. Importējiet tos savā kodā, koda augšdaļā pievienojot rindiņas “import json” un “import csv”.

Pēc tam izmantojiet JSON bibliotēkasslodze" metodi, lai importētu datus no JSON faila. Tā tiks ielādēta kā Python vārdnīca. Izmantojiet vārdnīcas "atslēgas" metodi, lai noteiktu datu laukus JSON failā, kas kļūs par kolonnām jūsu CSV failā.

Izmantojiet CSV bibliotēkas "DictWriter" klasē, lai izveidotu CSV failu ar šīm kolonnām, norādot tās, izmantojot DictWriter's "lauku nosaukumi" arguments. Izmantojiet savu "rakstīšanas galvenes" metodi, lai izvadītu kolonnu nosaukumus CSV faila augšdaļā.

Pēc tam veiciet cilpu caur JSON objektu ar a cilpai. Zvaniet CSV objekta "writerow" metodi katram datu elementam JSON failā, lai izveidotu atbilstošu rindu CSV failā.

Sarežģīti JSON faili

Dažus sarežģītus JSON failus var būt grūtāk attēlot kā CSV. Tas var ietvert failus, kas uzreiz neatbilst standarta rindu un kolonnu struktūrai. Ja jums ir darīšana ar šādu failu un vēlaties to pārveidot par CSV, jums ir dažas iespējas.

Pirmkārt, varat meklēt kopējo datu lauku kopu, kas atrodas JSON failā, un padarīt tās par CSV faila kolonnām. Konkrētā rindā atstājiet kolonnu tukšu, ja tā tur neparādās. Izmantojiet opciju "extrasaction='ignorēt'" iestatot Python CSV DictWriter, lai tas automātiski tiktu darīts laukiem, kas nav sastopami noteiktā datu daļā.

Varat arī apsvērt iespēju JSON failu attēlot kā vairākus CSV failus — pa vienam katram tajā attēlotajam datu veidam. Izmantojiet Python ja paziņojumus, lai noteiktu, kurā CSV failā ir jāieraksta konkrēta datu daļa.

Šī metode var būt noderīga arī ligzdotiem JSON failiem, kuros JSON objekti satur citus objektus. Šos apakšobjektus var ievietot savā CSV failā, norādot, kurai primārā CSV rindai tie atbilst.