في هذا المقال، ستتعلم عدة طرق لتحويل بيانات YAML إلى تنسيق JSON، بما في ذلك البرمجة بلغة Python و PowerShell و Go.
المتطلبات
إذا كنت ترغب في متابعة الأمثلة في هذا البرنامج التعليمي، تأكد من أن لديك
- A code editor. This article will use Visual Studio Code version 1.55.1. Feel free to use any code editor you want.
- للبدء في تحويل YAML إلى JSON، تحتاج إلى نموذج YAML. انسخ المحتوى أدناه إلى ملف جديد يسمى operating-systems.yml. احفظ ملف YAML في دليل العمل الخاص بك.
استخدام Python لتحويل YAML إلى JSON
البرمجة بلغة Python هي لغة ممتازة للاستخدام في التلقائية. ولكن هل تعلم أنه يمكنك توسيع قدرات Python واستخدامها لتحويل المستندات من YAML إلى JSON؟ وتحتاج فقط إلى أداء بضع خطوات لبدء تحويل YAML إلى JSON في أي وقت.
المثال في هذا القسم يتطلب منك أن تكون قد قمت بتثبيت Python 3.9 و PIP (أحدث إصدار حتى كتابة هذا النص هو 21.0.1).
إضافة دعم YAML إلى Python
Python ليس لديه دعمًا مدمجًا لـ YAML. وهذا يعني أن Python لا يستطيع قراءة أو تفسير مستندات YAML بشكل افتراضي. لإضافة دعم YAML إلى Python، عليك أولاً تثبيت وحدة PyYAML.
لتثبيت وحدة PyYAML، ستحتاج إلى تشغيل الأمر pip
، وهو أداة تثبيت الحزم لـ Python. للقيام بذلك، اتبع هذه الخطوات.
أولاً، افتح محرر الأوامر المفضل لديك، مثل سطر الأوامر أو PowerShell. يجب أن يعمل الأمر pip
في أي منهما. يستخدم هذا المثال PowerShell.
بعد ذلك، قم بتشغيل الأمر أدناه في PowerShell. هذا الأمر يقوم بتثبيت وحدة PyYAML.
كما يمكنك أن ترى في لقطة الشاشة أدناه، قام pip
بتثبيت أحدث إصدار من PyYAML (5.4.1 حتى كتابة هذا النص).

كتابة نص التحويل
الآن بعد أن قمت بتثبيت الوحدة المطلوبة (PyYAML)، أنت جاهز لكتابة نص التحويل الخاص بك. لإنشاء سكريبت Python لتحويل YAML إلى JSON، اتبع هذه الخطوات.
1. افتح محرر الكود الخاص بك وأنشئ ملفًا جديدًا يُسمى convert-os.py في دليل العمل الخاص بك. هذا الملف هو سكريبتك.
2. قم بنسخ الكود أدناه والصقه في ملف الـconvert-os.py الخاص بك. سيقوم هذا السكربت بقراءة محتوى YAML من operating-systems.yml، ثم تحويل المحتوى إلى تنسيق JSON، وسيكتب الناتج في ملف python_operating-systems.json.
3. حفظ السكربت convert-os.py.
تشغيل السكربت التحويلي
بعد إنشاء السكربت التحويلي، حان الوقت لوضعه على الاختبار. لتنفيذ سكربت Python لتحويل YAML إلى JSON، قم باتباع الخطوات التالية:
1. قم بفتح نافذة الطرفية. يستخدم هذا المقال PowerShell، ولكن سيعمل موجه الأوامر (CMD) بنفس الكفاءة.
٢. انسخ الأمر أدناه، والصقه في PowerShell، ثم اضغط على Enter. هذا الأمر يقوم بتشغيل البرنامج التنفيذي Python
لاستدعاء النصيب convert-os.py الذي قمت بإنشائه في القسم السابق.
بعد تشغيل الأمر، يجب أن ترى إخراجًا مماثلًا للصورة أدناه. كما ترى، عرض الأمر الناتج على الشاشة وحفظ نفس الإخراج في ملف c:\temp\python_operating-systems.json.

٣. في النهاية، افتح ملف JSON المسمى python_operating-systems.json الذي يجب أن يكون قد أنشأه النصيب convert-os.py. في هذا المثال، لفتح الملف في المفكرة، قم بتشغيل الأمر التالي في PowerShell.

استخدام PowerShell لتحويل YAML إلى JSON
يمكن لـ PowerShell تعديل ملفات النص وتحويل الكائنات إلى عدة تنسيقات بما في ذلك JSON. نظرًا لأن PowerShell قابل للتوسيع، يمكنك استخدام PowerShell لتحويل تنسيق YAML إلى JSON باستخدام الوحدة النمطية الصحيحة.
إضافة دعم YAML إلى PowerShell
تحتوي PowerShell على دعم مدمج للتعامل مع محتوى JSON، ولكن ليس لديها دعم لـ YAML. لحسن الحظ، هناك وحدة نمطية توسيعية لـ PowerShell لدعم ملفات YAML. تُسمى هذه الوحدة PowerShell-yaml، وأحدث إصدار حتى كتابة هذا النص هو 0.4.2. اتبع هذه الخطوات لتثبيت الوحدة النمطية.
١. على جهاز الكمبيوتر الخاص بك، افتح جلسة PowerShell.
٢. انسخ الأمر أدناه، والصقه في PowerShell، ثم اضغط على Enter. يستخدم هذا الأمر الأداة Install-Module
لتثبيت وحدة PowerShell-yaml.
٣. بعد تثبيت الوحدة، ستصبح هناك اثنتان من الأوامر الجديدة المتاحة في PowerShell كجزء من وحدة PowerShell-yaml. تلك الأوامر الجديدة هي:
ConvertFrom-Yaml
– الأمر لتحويل بيانات YAML إلى جدول تجزئة.
ConvertTo-Yaml
– الأمر لتحويل كائنات جدول التجزئة إلى بيانات YAML.
للتحقق من توافر الأوامر في PowerShell، قم بتشغيل الأمر أدناه في PowerShell.
كما هو موضح أدناه، قامت الأداة Get-Command
بسرد الأوامر من وحدة PowerShell-yaml.

كتابة نص الشطب
لإنشاء نص الشطب الخاص بتحويل YAML إلى JSON في PowerShell، اتبع هذه التعليمات.
١. افتح محرر النصوص الخاص بك وأنشئ ملفًا جديدًا يحمل اسم convert-os.ps1 في دليل العمل الخاص بك.
2. انسخ الكود أدناه والصقه في ملف convert-os.ps1. الكود أدناه يقوم بقراءة ملف operating-systems.yml وتحويله إلى صيغة JSON. بمجرد تحويله إلى JSON، يتم حفظه في ملف PowerShell_operating-systems.json.
3. حفظ ملف convert-os.ps1.
تشغيل نص الحويل
الآن بعد أن قمت بإنشاء نص الحويل الخاص بك، الخطوة التالية هي تشغيله لتحويل YAML إلى JSON. لتنفيذ نص الحويل في PowerShell، اتبع هذه الخطوات.
- افتح نافذة PowerShell إذا لم تكن قد قمت بذلك بعد.
2. انسخ الأمر أدناه، ثم الصقه في PowerShell، واضغط على Enter. هذا الأمر يستدعي نص البرنامج convert-os.ps1 الذي قمت بإنشائه في الجزء السابق.
3. بعد تشغيل البرنامج، افتح ملف الإخراج JSON الذي أنشأه نص البرنامج convert-os.ps1 في الخطوة السابقة. لفعل ذلك، قم بتشغيل الأمر التالي في PowerShell لفتح الملف PowerShell_operating-systems.json في Notepad.
C:\temp\PowerShell_operating-systems.json
PowerShell_operating-systems.json

استخدام Go لتحويل YAML إلى JSON
كل من Python و PowerShell لغات عالية المستوى. كونهما عاليتي المستوى يجعل كتابة النصوص البرمجية أسهل لكنه يقلل قليلاً من التحكم. من ناحية أخرى، Go لغة منخفضة المستوى، مما يجعل استيراد بيانات YAML أكثر تعقيدًا.
المثال في هذا القسم سيستخدم Go. أحدث إصدار حتى كتابة هذا النص هو go1.16.3. إذا لم يكن لديك Go بعد، يرجى الرجوع إلى صفحة التنزيل والتثبيت لتثبيته على جهاز الكمبيوتر الخاص بك.
إضافة دعم YAML إلى Go
مثل PowerShell و Python، يعد دعم JSON جزءًا من مكتبات Go الأساسية، ولكن YAML ليس كذلك. لإضافة دعم YAML في Go، تحتاج إلى تثبيت حزمة YAML.v3 أولاً باستخدام الأمر go get. لتثبيت حزمة YAML.v3:
أولاً، على جهاز الكمبيوتر الخاص بك، افتح موجه الأوامر التي تريدها، مثل نافذة الأوامر أو PowerShell. يستخدم هذا المثال PowerShell.
التالي، انسخ الأمر أدناه وقم بتشغيله في PowerShell. سيقوم هذا الأمر بتنزيل وتثبيت الحزمة بالاسم gopkg.in/yaml.v3.

كتابة نص التحويل
لإنشاء نص تحويل YAML إلى JSON باستخدام لغة Go، اتبع هذه التعليمات.
1. افتح محرر الكود الخاص بك وأنشئ ملفًا جديدًا بالاسم convert-os.go في دليل العمل الخاص بك.
2. انسخ الكود أدناه والصقه في الملف الفارغ convert-os.go. يقوم الكود بتوريد الحزم اللازمة، يعرف بعض هياكل الذاكرة، يقوم بتوريد ملف YAML، ويحوله إلى JSON قبل كتابته في ملف JSON بالاسم c:\temp\go_operating-systems.json.
3. حفظ ملف convert-os.go.
تشغيل نص التحويل
تشغيل النصوص في جو يستخدم الأمر go run
تليه اسم الملف النصي. لتشغيل نص التحويل من YAML إلى JSON في جو، اتبع الخطوات التالية.
1. على جهاز الكمبيوتر الخاص بك، افتح موجه الأوامر التي تريد استخدامها. في نظام التشغيل Windows، سيعمل go
على إما سطر الأوامر أو بوويرشيل. يستخدم هذا المثال بوويرشيل لتشغيل go
.
2. بمجرد دخولك إلى بوويرشيل، قم بنسخ الأمر أدناه وقم بتشغيله في بوويرشيل. سيقوم هذا الأمر بدعوة الأمر go run
لتشغيل نص c:\temp\convert-os.go.

3. بعد تشغيل النص، افتح ملف الإخراج C:\temp\Go_operating-systems.json الذي أنشأه نص convert-os.go في الخطوة السابقة. يفتح هذا المثال Go_operating-systems.json في المفكرة.

الاستنتاج
في هذه المقالة، تعلمت كيفية تحويل بيانات YAML وملفاتها إلى JSON باستخدام النصوص في Python، بوويرشيل، وجو. الآن بعد أن تعلمت الطرق المختلفة لتحويل YAML إلى JSON، ما الطريقة التي تعتقد أنك ستستخدمها أكثر؟