برنامج تعليمي موجز لكشط بيانات الطقس باستخدام نصوص مشروحة (الجزء 2/3)

In الوظيفة السابقة في هذه السلسلة ، حددنا مفهوم تجريف البيانات وقدمنا ​​لك مبادئه الأساسية. إذا لم تكن قد قمت بذلك بالفعل ، فنقترح عليك قراءة هذه المشاركة السابقة لأنها قد تساعدك على فهم محتوى هذا المنشور بشكل أفضل.

في المنشور الثاني من هذه السلسلة ، سنقدم واجهة برمجة التطبيقات التي اخترناها لإجراء تجريف البيانات ، وسنصف الجزء الرئيسي من نصوص تجريف البيانات التي تمت برمجتها أحدنا (باستيان) ، ونوفر رابطًا إلى GitHub Repo حيث البرامج النصية تتوفر.

واجهة تطبيق AerisWeather

ايريسويذر يوفر واجهة برمجة تطبيقات تلبي جميع احتياجاتنا لمشاريعنا البحثية: 

  • توفر واجهة برمجة التطبيقات الخاصة بهم بيانات الطقس التاريخية من عام 2011 فصاعدًا لمتغيرات الطقس المختلفة (على سبيل المثال ، درجة الحرارة أو الرياح أو تغطية السماء أو الرطوبة). 
  • تدعم واجهة برمجة التطبيقات الخاصة بهم معظم المواقع في جميع أنحاء العالم. 

الأهم من ذلك ، أن أسعارها من أكثر الأسعار تنافسية: لقد سمحت لنا خطة اشتراكنا البالغة 245 دولارًا بجمع بيانات الطقس لثلاثة مشاريع بحثية مختلفة (لما مجموعه أكثر من 75,000 مشارك وأكثر من 10,000,000 نقطة بيانات) ، وما زلنا بعيدين عن الاستخدام الحد الذي وضعته هذه الخطة. لاحظ أنه من المهم جدًا تقييم الأسعار قبل البرمجة ، حيث يمكن أن تكون هناك نطاقات واسعة في الأسعار التي يحددها الموردون. 

بمجرد العثور على واجهة برمجة التطبيقات ، كانت الخطوة التالية هي برمجة نص برمجي يتواصل مع واجهة برمجة التطبيقات لجمع البيانات التي نحتاجها. لتسهيل هذه المهمة ، يشارك موفرو واجهة برمجة التطبيقات دائمًا بعض الوثائق حول كيفية استخدام واجهة برمجة التطبيقات الخاصة بهم (على سبيل المثال ، https://www.aerisweather.com/support/docs/api/). 

فيما يلي نصف الجزء الرئيسي من نصوص تجريف البيانات المبرمجة Bastien لجمع البيانات من AerisWeather.

جمع البيانات وحفظها

فيما يلي عينة من مجموعة البيانات التي نريد جمع بيانات الطقس من أجلها:

يمكنك أن ترى أن كل مشارك مرتبط بتاريخ (تاريخ البدء متغير ، وهو الوقت الذي بدأ فيه المشارك الدراسة) والإحداثيات الجغرافية (إحداثيات جغرافية متغير ، وهو مزيج خطوط الطول والعرض للمكان الذي شارك فيه الشخص في الدراسة).

لنفترض أنه ، لكل مشارك ، هدفنا هو استرداد بيانات الطقس لليوم الذي أكمل فيه المشارك الدراسة ، للموقع الذي يرتبط به المشارك.

سيتعين على البرنامج النصي الخاص بنا أن يكرر خطوة رئيسية واحدة لكل مشارك: جمع وحفظ بيانات الطقس لمزيج الوقت / الموقع المرتبط بالمشارك.

لجمع هذه البيانات ، تقترح نظرة سريعة على وثائق واجهة برمجة التطبيقات استخدام بنية عنوان URL التالية:

https://api.aerisapi.com/observations/archive/الموقع؟ من =التاريخ& الحقول =المتغيرات& client_id =ID_KEY& client_secret =SECRET_KEY (وهذا يعني أن عنوان URL يحتوي على تركيبة خطوط الطول / العرض لـ "LOCATION" ، حيث يكون "DATE" واضحًا ، و "VARIABLES" هي المتغيرات التي نريد استخراجها من قاعدة بيانات Aerisweather).  

يوجد أدناه عنوان URL الذي سيعرض بيانات الطقس التي تهم المشترك_1 (بالطبع ، كان من الممكن أن تختار متغيرات مختلفة ؛ هذه هي المتغيرات التي حددناها ذات أهمية لمشاريعنا. للحصول على قائمة المتغيرات وما تعنيه الاختصارات أدناه ، راجع هنا):

https://api.aerisapi.com/observations/archive/51.481312،، 3.180500؟ من =2016-01-27& الحقول =فترات. ob.visibilityKM، periods.ob.sky، periods.profile.elevM& client_id =YOUR_ID_KEY& client_secret =YOUR_SECRET_KEY

فيما يلي عينة من البيانات لمشاركنا من كارديف في 27 يناير 2021 عند الوصول إلى عنوان URL أعلاه:

توضح وثائق AerisWeather API كيفية تنظيم البيانات. باختصار ، يتم إرجاع البيانات فيما يسمى "تنسيق JSON" ، وهو تنسيق قياسي لتخزين البيانات بطريقة منظمة (مثل XML).

بمجرد إرجاع البيانات إليك ، تحتاج فقط إلى حفظها على جهاز الكمبيوتر الخاص بك بتنسيق اسم الملف الذي سيطبقه البرنامج النصي الخاص بك على كل ملف (بحيث يمكنك بسهولة العثور على البيانات التي تهتم بها). في هذه الحالة ، قد يبدو حفظها بتنسيق اسم الملف التالي "PARTICIPANTID_TIMING.json" (على سبيل المثال ، "مشارك 1_DayOfDataCollection.json") مناسبًا. 

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

ملاحظات ختامية

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

كتب هذا المنشور باستيان باريس وهانس إيجيزرمان

XNUMX تعليق على "برنامج تعليمي موجز لكشط بيانات الطقس باستخدام نصوص مشروحة (الجزء 2/3)"

اترك تعليق

يستخدم هذا الموقع نظام Akismet لتقليل الرسائل الضارة. تعرف كيف تتم معالجة بيانات تعليقك.

%d المدونين مثل هذا: