تحويل JSON إلى Excel
حوّل ملف JSON أو NDJSON مُصدَّرًا إلى جدول بيانات مسطّح. تصير الكائنات المتداخلة أعمدة بأسماء مفصولة بنقاط، ويضيف كل سجل مفاتيحه إلى الأعمدة.
أفلت ملفاتك هنا
.json, .ndjson, .txt · حتى 300 م.ب
إعدادات إضافيةإعدادات أقل
طريقة تحويل إلى Excel
- 1
إفلات ملف JSON أو لصق النص
يُقبل JSON العادي وNDJSON المفصول بأسطر جديدة، والاستجابة الملصقة تعمل تمامًا كما يعمل الملف.
- 2
تحديد المصفوفة وطريقة تسطيح التداخل
إذا كانت السجلات تحت data.items فاكتب ذلك. واختر هل تصير الكائنات المتداخلة أعمدة، وكيف تُمثَّل المصفوفات.
- 3
التحويل وتنزيل ملف XLSX
يُفتح المصنف مباشرة على جدول بصف عناوين مثبّت، وعرض الأعمدة مضبوط مسبقًا على قدر المحتوى.
استجابات API ليست جداول
لا تكاد توجد حمولة حقيقية تكون مصفوفة مجردة. فهي ملفوفة في غلاف يحمل حالة الطلب، والسجلات تقع تحت data.items أو result.rows، وفي كل سجل كائنات متداخلة. لهذا يكون المسار إلى السجلات أول ما تطلبه هذه الأداة بدلًا من أن تخمّنه: فالتخمين الخاطئ ينتج جدولًا من صف واحد يصف الغلاف، يبدو نجاحًا وهو ليس كذلك. وإذا لم يؤدِّ المسار إلى شيء، تسرد رسالة الخطأ المفاتيح الموجودة فعلًا في المستوى الأعلى، فتكون المحاولة التالية مبنية على معلومة لا على تخمين آخر.
الأعمدة تأتي من كل السجلات لا من الأول وحده
أكثر خطأ شيوعًا في الشيفرة المكتوبة يدويًا لتحويل JSON إلى جدول هو أخذ قائمة الأعمدة من السجل الأول. فالسجلات في الملفات المُصدَّرة الحقيقية غير متساوية: حقل البريد الإلكتروني الاختياري يظهر في السجل الثاني، والخصم لا يظهر إلا في السجلات التي فيها خصم. أما هنا فيُفحص كل سجل، وتكون قائمة الأعمدة اتحاد مفاتيحها كلها بترتيب ظهورها الأول، فلا يختفي شيء بصمت. والصفوف التي ينقصها عمود تحصل على خلية فارغة بدلًا من قيمة منزاحة. وإذا أردت عمدًا شكل السجل الأول وحده، فهذا إعداد متاح، لكنه ليس الافتراضي، لأن فقدان البيانات بصمت أسوأ من جدول عريض.
التداخل والمصفوفات وحدود الخلية
يصير الكائن المتداخل أعمدة بأسماء مثل user.address.city حتى العمق الذي تسمح به؛ أما الفروع الأعمق فتُكتب كنص JSON مختصر بدلًا من تفكيكها، لأن استجابة GraphQL المفككة بالكامل قد تنتج عشرين ألف عمود، بينما يتوقف Excel عند 16,384. وللمصفوفات ثلاث معالجات: دمجها في خلية واحدة بفاصل تختاره، أو توزيعها على الأعمدة من tags.0 إلى tags.N، أو كتابتها كنص JSON. والمعالجة المناسبة تتوقف كليًا على ما تنوي فعله بعد ذلك. والنصوص التي يزيد طولها على 32,767 حرفًا تُقتطع مع تنبيه، لأن هذا حد صارم للخلية نفسها.
لا شيء يغادر متصفحك
التحليل والتسطيح وكتابة المصنف، كلها تجري محليًا في علامة التبويب هذه. وكثيرًا ما يحتوي تفريغ API على سجلات عملاء أو رموز وصول، لذلك من المفيد قولها صراحةً: لا رفع، ولا معالجة على الخادم، ولا نسخة محفوظة.
الأسئلة الشائعة
كيف أتعامل مع الكائنات المتداخلة؟
افتراضيًا تصير أعمدة بأسماء مفصولة بنقاط مثل user.address.city، حتى العمق الذي تحدده. وبعد هذا العمق يُحفظ الفرع المتبقي كنص JSON مختصر فلا يضيع شيء، ويمكنك أيضًا فرض حفظ كل الكائنات بهذه الطريقة.
كيف أحدد مصفوفة السجلات؟
اكتب مسارها مفصولًا بنقاط، مثل data.items أو result.rows.0. وإذا لم يؤدِّ المسار إلى شيء، تسرد رسالة الخطأ مفاتيح المستوى الأعلى في ملفك لترى أين توجد السجلات فعلًا.
ماذا يحدث للمصفوفات داخل السجل؟
القرار لك. الدمج يضعها في خلية واحدة يفصل بين عناصرها نص تختاره، والتوزيع على الأعمدة ينشرها على الأعمدة من tags.0 إلى tags.N بحد أقصى 50 عمودًا، وخيار JSON يحفظ المصفوفة كنص. والدمج هو الافتراضي لأنه الأسهل قراءةً في جدول البيانات.
لماذا تختلف الحقول من سجل إلى آخر؟
هذا أمر طبيعي في البيانات المُصدَّرة من API، والأداة تتعامل معه: قائمة الأعمدة هي اتحاد مفاتيح كل السجلات بترتيب ظهورها الأول. والسجلات التي ينقصها حقل تحصل على خلية فارغة بدلًا من صف منزاح.
ما الحد الأقصى لعدد الصفوف والأعمدة في Excel؟
1,048,576 صفًا و16,384 عمودًا. وتجاوز أي منهما يُرفض مع شرح للسبب ورابط إلى محوّل CSV، الذي لا يخضع لهذا السقف.
هل تدعم الأداة NDJSON؟
نعم. الملف ذو الامتداد .ndjson يُحلَّل سجلًا واحدًا في كل سطر، وهذا يعني أيضًا أن خطأ الصياغة يحدد السطر بدقة بدلًا من إزاحة داخل نص حجمه 100 ميغابايت.
هل يُرفع ملفي؟
لا. كل شيء، من التحليل حتى كتابة ملف XLSX، يجري في متصفحك، دون أي خادم، ولا يُحتفظ بشيء بعد إغلاق علامة التبويب.