Jak převést JSON na CSV v Pythonu

Žena ruce kódování html a programování na obrazovce notebooku, web, vývojář.

Jak převést JSON na CSV v Pythonu

Kredit obrázku: oatawa/iStock/GettyImages

Můžete převést JSON až CSV v programovacím jazyce Python pomocí vestavěných knihoven dodávaných s jazykem. Můžete procházet objektem JSON a vydávat jeho klíče a hodnoty jako řádky v souboru hodnot oddělených čárkami. Mějte na paměti, že ne všechny soubory JSON lze snadno reprezentovat jako jeden soubor CSV, takže v závislosti na formátu možná budete muset použít více souborů CSV, aby byla všechna data užitečně reprezentována.

Porozumění JSON a CSV

Soubory JSON a CSV jsou dva běžné způsoby reprezentace digitálních dat. JSON znamená Zápis objektů JavaScripta je to způsob, jak reprezentovat data jako vnořená mapování klíčů k hodnotám a také seznamy dat. Je inspirován tím, jak jsou data reprezentována v programovacím jazyce JavaScript, ale mnoho moderních programovacích jazyků včetně Pythonu má nástroje pro zpracování dat JSON.

Video dne

A hodnota oddělená čárkami soubor je další způsob, jak reprezentovat strukturovaná data. Tyto soubory se často používají s tabulkami a podobnými typy programů, takže pokud chcete

import JSON do Excelu může být užitečné jej nejprve převést do souboru CSV. Obecně platí, že soubory CSV obsahují v horní části souboru záhlaví sloupců, která udávají, co je v jednotlivých sloupcích uloženo. Potom se každý řádek v souboru skládá z několika hodnot, jedné pro každý sloupec, oddělených čárkami. Pro nakládání s daty s čárkami platí zvláštní pravidla.

Stejně jako u souborů JSON existuje mnoho nástrojů v mnoha programovacích jazycích, včetně Pythonu, pro generování a čtení souborů CSV.

Převést JSON na CSV

JSON můžete převést na CSV pomocí vestavěných knihoven JSON a CSV v Pythonu. Importujte je do svého kódu přidáním řádků „import json“ a „import csv“ v horní části kódu.

Poté použijte knihovnu JSON "zatížení" metoda k importu dat ze souboru JSON. Bude načten jako slovník Pythonu. Použijte slovník "klíče" metoda k určení datových polí v souboru JSON, která se stanou sloupci ve vašem souboru CSV.

Použijte knihovnu CSV "DictWriter" třídy k vytvoření souboru CSV s těmito sloupci a jejich zadáním pomocí DictWriter's "názvy polí" argument. Použijte jeho "záhlaví" metoda pro výstup názvů sloupců v horní části CSV.

Poté projděte objekt JSON pomocí a pro smyčku. Volání metodu "writerow" objektu CSV na každý datový prvek v souboru JSON, aby se vytvořil odpovídající řádek v souboru CSV.

Komplexní soubory JSON

Některé složité soubory JSON mohou být obtížněji reprezentovány jako soubory CSV. To může zahrnovat soubory, které se okamžitě nezařadí do standardní řádkové a sloupcové struktury. Pokud máte co do činění s takovým souborem a chcete ho převést do CSV, máte několik možností.

Nejprve můžete vyhledat celkovou sadu datových polí, která se vyskytují v souboru JSON, a vytvořit z nich sloupce vašeho CSV. Pokud se sloupec v konkrétním řádku nevyskytuje, ponechte ho prázdný. Použijte možnost "extraction='ignore'" v nastavení Python CSV DictWriter, aby to automaticky prováděl pro pole, která se nevyskytují v konkrétní části dat.

Můžete také zvážit reprezentaci souboru JSON jako více souborů CSV, jeden pro každý typ dat, která jsou v něm zastoupena. Použijte Python -li příkazy ke zjištění, do kterého souboru CSV by měla být konkrétní část dat zapsána.

Tato technika může být také užitečná pro vnořené soubory JSON, ve kterých objekty JSON obsahují jiné objekty. Tyto dílčí objekty lze vložit do vlastního souboru CSV s uvedením toho, kterému řádku v primárním CSV odpovídají.