كيفية تحويل JSON إلى CSV في بايثون

يد امرأة ترميز لغة تأشير النص الفائق والبرمجة على شاشة كمبيوتر محمول ، ويب ، مطور.

كيفية تحويل JSON إلى CSV في بايثون

حقوق الصورة: oatawa / iStock / GettyImages

يمكنك التحويل JSON إلى CSV بلغة برمجة Python باستخدام مكتبات مدمجة تأتي مع اللغة. يمكنك إجراء حلقة خلال كائن JSON وإخراج مفاتيحه وقيمه كصفوف في ملف قيم مفصولة بفاصلة. ضع في اعتبارك أنه لا يمكن تمثيل جميع ملفات JSON بسهولة كملفات CSV فردية ، لذلك ، بناءً على التنسيق ، قد تحتاج إلى استخدام ملفات CSV متعددة لتمثيل جميع البيانات بطريقة مفيدة.

فهم JSON و CSV

تعد ملفات JSON و CSV طريقتين شائعتين لتمثيل البيانات الرقمية. ترمز JSON إلى جافا سكريبت تدوين كائن، وهي طريقة لتمثيل البيانات كتعيينات متداخلة لمفاتيح القيم بالإضافة إلى قوائم البيانات. إنه مستوحى من كيفية تمثيل البيانات في لغة برمجة JavaScript ، ولكن العديد من لغات البرمجة الحديثة بما في ذلك Python لديها أدوات لمعالجة بيانات JSON.

فيديو اليوم

أ قيمة مفصولة بفواصل الملف هو طريقة أخرى لتمثيل البيانات المهيكلة. غالبًا ما تُستخدم هذه الملفات مع جداول البيانات وأنواع البرامج المماثلة ، لذلك إذا كنت ترغب في ذلك استيراد JSON إلى Excel قد يكون من المفيد تحويله إلى ملف CSV أولاً. بشكل عام ، تتضمن ملفات CSV رؤوس أعمدة في أعلى الملف تشير إلى ما تم تخزينه في كل عمود. بعد ذلك ، يتكون كل سطر في الملف من قيم متعددة ، واحدة لكل عمود مفصولة بفاصلات. هناك قواعد خاصة للتعامل مع البيانات بفاصلات فيها.

تمامًا كما هو الحال مع ملفات JSON ، هناك العديد من الأدوات في العديد من لغات البرمجة ، بما في ذلك Python ، لإنشاء ملفات CSV وقراءتها.

تحويل JSON إلى CSV

يمكنك تحويل JSON إلى CSV باستخدام مكتبات JSON و CSV المضمنة في Python. قم باستيرادها إلى شفرتك عن طريق إضافة سطور تقول "استيراد json" و "استيراد csv" بالقرب من الجزء العلوي من شفرتك.

ثم استخدم مكتبة JSON "حمل"طريقة لاستيراد البيانات من ملف JSON. سيتم تحميله على هيئة قاموس بايثون. استخدم قاموس "مفاتيح"لتحديد حقول البيانات في ملف JSON الذي سيصبح الأعمدة في ملف CSV الخاص بك.

استخدم مكتبة CSV "DictWriter " فئة لإنشاء ملف CSV بهذه الأعمدة ، مع تحديدها باستخدام DictWriter's "أسماء الحقول " جدال. استخدم "رؤوس الكتابة"طريقة لإخراج أسماء الأعمدة أعلى ملف CSV.

ثم ، قم بعمل تكرار خلال كائن JSON بامتداد لحلقة. يتصل طريقة "كاتب" كائن CSV على كل عنصر بيانات في ملف JSON لإنشاء صف مناظر في ملف CSV.

ملفات JSON المعقدة

قد يكون من الصعب تمثيل بعض ملفات JSON المعقدة كملفات CSV. يمكن أن يتضمن ذلك الملفات التي لا تصطف على الفور مع بنية الصفوف والأعمدة القياسية. إذا كنت تتعامل مع مثل هذا الملف وتريد تحويله إلى ملف CSV ، فلديك بعض الخيارات.

أولاً ، يمكنك البحث عن المجموعة الإجمالية لحقول البيانات التي تحدث في ملف JSON وجعل هذه الأعمدة في ملف CSV الخاص بك. اترك عمودًا فارغًا في صف معين إذا لم يظهر هناك. استخدم الخيار "extrasaction = 'ignore'" في إعداد Python CSV DictWriter للقيام بذلك تلقائيًا للحقول التي لا تحدث في جزء معين من البيانات.

يمكنك أيضًا التفكير في تمثيل ملف JSON كملفات CSV متعددة ، واحد لكل نوع من البيانات التي يتم تمثيلها فيه. استخدم بايثون لو البيانات لاكتشاف ملف CSV الذي يجب كتابة جزء معين من البيانات إليه.

يمكن أن تكون هذه التقنية مفيدة أيضًا لملفات JSON المتداخلة ، حيث تحتوي كائنات JSON على كائنات أخرى. يمكن وضع هذه الكائنات الفرعية في ملف CSV الخاص بها مع الإشارة إلى الصف في ملف CSV الأساسي الذي تتوافق معه.