כיצד להמיר JSON ל-CSV ב-Python

ידיה של אישה מקודדת HTML ותכנות על מסך מחשב נייד, אינטרנט, מפתח.

כיצד להמיר JSON ל-CSV ב-Python

קרדיט תמונה: oatawa/iStock/GettyImages

אתה יכול להמיר JSON ל-CSV בשפת התכנות Python באמצעות ספריות מובנות המגיעות עם השפה. אתה יכול בלולאה דרך אובייקט JSON ולהוציא את המפתחות והערכים שלו כשורות בקובץ ערכים מופרד בפסיקים. זכור שלא כל קבצי JSON יכולים להיות מיוצגים בקלות כקובצי CSV בודדים, ולכן, בהתאם לפורמט, ייתכן שיהיה עליך להשתמש במספר קובצי CSV כדי לייצג את כל הנתונים בצורה שימושית.

הבנת JSON ו-CSV

קובצי JSON ו-CSV הם שתי דרכים נפוצות לייצוג נתונים דיגיטליים. JSON מייצג סימון אובייקט JavaScript, וזו דרך לייצג נתונים כמיפויים מקוננים של מפתחות לערכים כמו גם רשימות נתונים. זה בהשראת האופן שבו הנתונים מיוצגים בשפת התכנות JavaScript, אבל לשפות תכנות מודרניות רבות כולל Python יש כלים לעיבוד נתוני JSON.

סרטון היום

א ערך מופרד בפסיקים קובץ הוא דרך נוספת לייצוג נתונים מובנים. קבצים אלה משמשים לעתים קרובות עם גיליונות אלקטרוניים וסוגים דומים של תוכניות, אז אם אתה רוצה לייבא JSON לאקסל זה יכול להיות שימושי להמיר אותו לקובץ CSV תחילה. בדרך כלל, קובצי CSV כוללים כותרות עמודות בראש הקובץ המציינות מה מאוחסן בכל עמודה. לאחר מכן, כל שורה בקובץ מורכבת ממספר ערכים, אחד עבור כל עמודה, מופרדים בפסיקים. ישנם כללים מיוחדים לטיפול בנתונים עם פסיקים בתוכם.

בדיוק כמו בקובצי JSON, ישנם כלים רבים בשפות תכנות רבות, כולל Python, להפקה וקריאה של קבצי CSV.

המר JSON ל-CSV

אתה יכול להמיר JSON ל-CSV באמצעות ספריות ה-JSON וה-CSV המובנות ב-Python. ייבא אותם לקוד שלך על ידי הוספת שורות האומרת "ייבוא ​​json" ו-"ייבוא ​​csv" ליד החלק העליון של הקוד שלך.

לאחר מכן, השתמש ב-" של ספריית JSONלִטעוֹן" שיטה לייבא את הנתונים מקובץ JSON. הוא ייטען כמילון פייתון. השתמש במילון "מפתחות" שיטה כדי לקבוע את שדות הנתונים בקובץ JSON שיהפכו לעמודות בקובץ ה-CSV שלך.

השתמש בספריית ה-CSV של "DictWriter" מחלקה כדי ליצור קובץ CSV עם העמודות הללו, תוך ציון אותן באמצעות ה-"שמות שדות" טַעֲנָה. השתמש ב" שלוכותרות כתיבה" שיטה לפלט את שמות העמודות בחלק העליון של ה-CSV.

לאחר מכן, לולאה דרך אובייקט JSON עם a עבור לולאה. שִׂיחָה שיטת "writerow" של אובייקט ה-CSV על כל רכיב נתונים בקובץ JSON כדי ליצור שורה מתאימה בקובץ ה-CSV.

קבצי JSON מורכבים

קבצי JSON מורכבים יכולים להיות קשים יותר לייצוג כקבצי CSV. זה יכול לכלול קבצים שאינם מתיישרים מיד למבנה שורות ועמודות סטנדרטיים. אם אתה מתמודד עם קובץ כזה וברצונך להמיר אותו ל-CSV, יש לך כמה אפשרויות.

ראשית, אתה יכול לחפש את הסט הכולל של שדות הנתונים המופיעים בקובץ JSON ולהפוך אותם לעמודות של ה-CSV שלך. השאר עמודה ריקה בשורה מסוימת אם היא לא מופיעה שם. השתמש באפשרות "extrasaction='ignore'" בהגדרת Python CSV DictWriter לעשות זאת באופן אוטומטי עבור שדות שאינם מופיעים בנתון מסוים.

אתה יכול גם לשקול לייצג את קובץ ה-JSON כמספר CSVs, אחד עבור כל סוג של נתונים שמיוצג בו. השתמש ב-Python אם הצהרות כדי לזהות לאיזה קובץ CSV יש לכתוב פיסת נתונים מסוימת.

טכניקה זו יכולה להיות שימושית גם עבור קובצי JSON מקוננים, שבהם אובייקטי JSON מכילים אובייקטים אחרים. ניתן להכניס אובייקטי משנה אלה לקובץ CSV משלהם עם ציון לאיזו שורה ב-CSV הראשי הם מתאימים.