فهرست مطالب:

ایجاد داشبورد آب و هوا با استفاده از API Dark Sky: 5 مرحله (همراه با تصاویر)
ایجاد داشبورد آب و هوا با استفاده از API Dark Sky: 5 مرحله (همراه با تصاویر)

تصویری: ایجاد داشبورد آب و هوا با استفاده از API Dark Sky: 5 مرحله (همراه با تصاویر)

تصویری: ایجاد داشبورد آب و هوا با استفاده از API Dark Sky: 5 مرحله (همراه با تصاویر)
تصویری: Napoleonic Wars 1809 - 14: Downfall 2024, نوامبر
Anonim
Image
Image

Dark Sky متخصص در پیش بینی و تجسم آب و هوا است. جالب ترین جنبه Dark Sky API آب و هوا است که می توانیم از آن برای بازیابی اطلاعات آب و هوا از تقریباً در هر نقطه از جهان استفاده کنیم. آب و هوا فقط بارانی یا آفتابی نیست ، دما ، نقطه شبنم ، باد ، رطوبت ، بارش ، فشار ، شاخص UV و موارد دیگر ، همه به راحتی در هر کجا که می خواهید ، هر زمان که بخواهید در دسترس است.

بیایید نحوه استفاده از API فوق العاده ساده Sky Sky را بیاموزیم. اگر تازه از API استفاده می کنید ، به شما قول می دهم که این کار بسیار آسان خواهد بود! و اگر قبلاً از API ها استفاده کرده اید ، امیدوارم بتوانیم با کدی که استفاده کرده ایم چیز جدیدی به شما آموزش دهیم.

آنچه برای این پروژه نیاز دارید:

  • حساب API Dark Sky
  • حساب دولت اولیه
  • رزبری پای یا لپ تاپ

مرحله 1: شروع به کار

ما قبلاً کارهای زیادی را برای شما انجام داده ایم تا کد را کنار هم قرار داده و اطلاعات را سازماندهی کنید. ما فقط به شما احتیاج داریم تا در طول مسیر تعدادی تغییر ایجاد کنید. اگر می خواهید کمی چالش ایجاد کنید ، برخی تغییرات را در کد ما و داده های آب و هوا ارسال کنید ، امکانات نامحدود وجود دارد!

برای بازیابی همه مواردی که برای شما آماده کرده ایم ، باید مخزن را از GitHub کلون کنید. GitHub سرویسی است که به ما امکان ذخیره ، بازبینی و مدیریت پروژه هایی مانند این را می دهد. شما می خواهید این اسکریپت را روی یک دستگاه اختصاصی اجرا کنید. Raspberry Pi یک گزینه عالی برای اجرای برنامه هایی مانند این آموزش است.

برای کلون کردن مخزن ، تنها کاری که باید انجام دهیم این است که به پایانه Pi خود یا ترمینال رایانه های خود که SSH’d است در pi شما وارد شویم و این دستور را تایپ کنیم:

$ git clone

enter را بزنید و این اطلاعات را خواهید دید:

شبیه سازی به "darksky"…

از راه دور: شمارش اشیاء: 2 ، انجام شده است. راه دور: مجموع 2 (دلتا 0) ، استفاده مجدد 0 (دلتا 0) ، بسته مجدد استفاده 2 باز کردن بسته بندی اشیاء: 100 ((2/2) ، انجام شده است. بررسی اتصال… انجام شد.

هنگامی که این را مشاهده کردید و تبریک می گویید ، GitHub Repo را با موفقیت کلون کرده اید و تمام فایل های لازم برای ساخت این پروژه را در اختیار دارید. قبل از اینکه به مرحله بعدی برویم ، بیایید مدتی وقت بگذاریم تا در اطراف این دایرکتوری کاوش کنیم و چند دستور اساسی خط فرمان را بیاموزیم.

دستور زیر را در ترمینال خود وارد کنید:

$ ls

این دستور همه موارد موجود در فهرست موجود را فهرست می کند. این لیست نشان می دهد که GitHub Repo ما با موفقیت در فهرست ما با نام "darksky" کلون شده است. بیایید نگاهی به موارد موجود در آن فهرست بیندازیم. برای حرکت به فهرست ، کافی است "cd" را تایپ کرده و سپس نام دایرکتوری را که می خواهید به آن بروید تایپ کنید.

در این مورد ، ما تایپ می کنیم:

$ cd darksky

هنگامی که enter را می زنیم ، می بینید که اکنون در پوشه darksky هستیم. بیایید دوباره "ls" را تایپ کنیم تا ببینیم چه فایل هایی را روی pi خود نصب کرده ایم.

README.md darksky.py…

در اینجا ما سند readme و فایل های پایتون را مشاهده می کنیم. بیایید با استفاده از دستور "nano" به darksky.py نگاهی بیندازیم. دستور nano به ما اجازه می دهد تا ویرایشگر متن nano را باز کنیم که در آن همه کد پایتون خود را برای هر بخش از این پروژه داریم. جلو بروید و تایپ کنید:

$ nano darksky.py

در اینجا می توانید تمام کدهایی را که برای این پروژه برای شما آماده کرده ایم مشاهده کنید. ما هنوز هیچ تغییری در این سند ایجاد نمی کنیم ، اما با خیال راحت به اطراف بروید و ببینید که بعداً در این آموزش چه خواهیم کرد.

مرحله 2: استفاده از API Dark Sky

حالت اولیه
حالت اولیه

برای استفاده از API Dark Sky ، ابتدا به کلید API خود نیاز دارید. نگران نباشید ، دریافت کلید API سریع و رایگان است. تنها کاری که باید انجام دهید این است که به وب سایت بروید و روی "Try for Free" کلیک کنید تا یک حساب کاربری ایجاد کنید.

  • روزانه 1،000 تماس API به صورت رایگان دریافت می کنید. هر درخواست API بیش از حد رایگان روزانه 0.0001 دلار هزینه دارد.
  • این محدودیت هر روز در نیمه شب UTC بازنشانی می شود.
  • درخواست پیش بینی پیش بینی آب و هوا در هفته آینده را باز می گرداند.
  • درخواست ماشین زمان ، شرایط آب و هوایی مشاهده شده یا پیش بینی شده را برای تاریخی در گذشته یا آینده باز می گرداند.

کلید مخفی API Dark Sky شما شبیه این خواهد بود: 0123456789abcdef9876543210fedcba.

می توانید با وارد کردن URL در مرورگر خود با فرمت زیر ، یک API با Dark Sky برقرار کنید:

api.darksky.net/forecast/"keyerly/on'slatitude] ، [طول جغرافیایی]

"کلید" را با کلید API Dark Sky و طول/عرض جغرافیایی خود با هر چیزی که می خواهید جایگزین کنید. می توانید طول و عرض جغرافیایی خود را با رفتن به Google Maps و جستجوی مکان خود پیدا کنید. این مقادیر در URL خواهند بود. نشانی اینترنتی آسمان تاریک فوق را با کلید دسترسی و مقادیر اضافه شده در یک نوار آدرس کپی و جایگذاری کنید.

پس از انجام این کار ، چیزی شبیه به این را مشاهده خواهید کرد:

روز "،" نزدیکترین طوفان ": 57 ،" نزدیکترین طوفان ": 15 ،" شدت بارندگی ": 0 ،" احتمال بارندگی ": 0 ،" دما ": 53.9 ،" دمای ظاهری ": 53.9 ،" نقطه شبنم ": 29.59 ،" رطوبت ": 0.39 ، "فشار": 1022.45 ، "windSpeed": 3.87 ، "windGust": 9.25 ، "windBearing": 259 ، "cloudCover": 0.01 ، "uvIndex": 3 ، "دید": 7.8 ، "ازن": 309.71} ، "minutely": {"summary": "Clear for the hour."، "icon": "clear-day"، "data": [{"time": 1550615280، "precipIntensity": 0، "precipProbability": 0 } ،…

خواندن آن می تواند کمی طاقت فرسا و سخت باشد ، بنابراین کاری که من توصیه می کنم انجام آن استفاده از قالب JSON برای کمک به خواندن بیشتر داده ها است. وقتی این کار را انجام می دهید چیزی شبیه به این خواهد بود:

شی {9}

عرض جغرافیایی: 37.8267 طول جغرافیایی: -122.4233 منطقه زمانی: America/Los_Angeles در حال حاضر {19} زمان: 1550615286 خلاصه: نماد روشن: نزدیکترین روز طوفان فاصله: 57 نزدیکترین طوفان تحمل: 15 بارش شدت: 0 بارش احتمال: 0 دما: 53.9 ظاهری دما: 53.9 شبنم: 0.39 فشار: 1022.45 باد سرعت: 3.87 باد شدت: 9.25 باد تحمل: 259 ابر پوشش: 0.01 uv شاخص: 3 دید: 7.8 ازن: 309.71

شما به تازگی یک تماس API برقرار کرده اید! ببینید که چقدر آسان است؟ شما حتی نیازی به نوشتن یک خط کد ندارید. اکنون که به API ها مسلط شدید ، می توانیم به بخش جریان داده ها برویم.

مرحله 3: حالت اولیه

ما می خواهیم همه داده های آب و هوا را به یک سرویس ابری منتقل کنیم و از آن سرویس بخواهیم داده های ما را به یک داشبورد زیبا تبدیل کند که می توانیم از طریق لپ تاپ یا دستگاه تلفن همراه خود به آن دسترسی داشته باشیم. داده های ما به مقصد نیاز دارد. ما از حالت اولیه به عنوان مقصد استفاده خواهیم کرد.

مرحله 1: ثبت نام در حساب اولیه دولت

به https://iot.app.initialstate.com بروید و یک حساب جدید ایجاد کنید. شما یک دوره آزمایشی 14 روزه رایگان دریافت می کنید و هرکسی دارای آدرس ایمیل edu باشد می تواند برای یک برنامه دانشجویی رایگان ثبت نام کند.

مرحله 2: ISStreamer را نصب کنید

ماژول اولیه حالت پایتون را روی رزبری پای خود نصب کنید. در خط فرمان ، دستور زیر را اجرا کنید:

$ cd/home/pi/$ / curl -sSL https://get.initialstate.com/python -o -| sudo bash

مرحله 3: برخی از Automagic را انجام دهید بعد از مرحله 2 چیزی شبیه خروجی زیر را روی صفحه مشاهده خواهید کرد:

pi@raspberrypi ~ $ / curl -sSL https://get.initialstate.com/python -o -| sudo bashPassword: شروع نصب ISStreamer Python آسان! ممکن است چند دقیقه طول بکشد تا نصب شود ، کمی قهوه بخورید:) اما فراموش نکنید که برگردید ، بعداً س questionsالاتی دارم! یافت شد easy_install: setuptools 1.1.6 پیپ یافت شد: pip 1.5.6 از /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) نسخه اصلی پیپ: 1 پیپ نسخه کوچک: 5 ISStreamer پیدا شد ، در حال بروزرسانی است … الزامات از قبل به روز شده است: ISStreamer در /Library/Python/2.7/site-packages تمیز کردن … آیا می خواهید به صورت خودکار یک اسکریپت نمونه دریافت کنید؟ [y/N] کجا می خواهید مثال را ذخیره کنید؟ [پیش فرض:./is_example.py] لطفاً از کدام برنامه اولیه استفاده می کنید: 1. app.initialstate.com 2. [جدید!] iot.app.initialstate.com گزینه 1 یا 2 را وارد کنید: iot.app را وارد کنید نام کاربری.initialstate.com: گذرواژه iot.app.initialstate.com را وارد کنید:

وقتی از شما پرسیده شد که آیا می خواهید به صورت خودکار یک اسکریپت نمونه به عنوان "y" برای بله دریافت کنید و enter را فشار دهید تا اسکریپت خود را در محل پیش فرض ذخیره کنید. برای پرسش از برنامه ای که استفاده می کنید ، 2 را انتخاب کنید (مگر اینکه قبل از نوامبر 2018 ثبت نام کرده باشید) و نام کاربری و رمز عبور خود را وارد کنید.

مرحله 4: مثال اسکریپت را اجرا کنید

اسکریپت آزمایشی را اجرا کنید تا مطمئن شوید که می توانیم یک جریان داده به حساب وضعیت اولیه شما ایجاد کنیم. دستور زیر را بنویسید:

$ python is_example.py

مرحله 6: داده های مثال

در مرورگر وب خود به حساب حالت اولیه خود بازگردید. یک سطل داده جدید به نام "مثال جریان پایتون" باید در سمت چپ در قفسه ورود به سیستم نمایش داده شود (ممکن است مجبور شوید صفحه را بازخوانی کنید). برای مشاهده اطلاعات خود روی این سطل کلیک کنید.

مرحله 4: داشبورد هواشناسی Dark Sky Weather

داشبورد هواشناسی Dark Sky
داشبورد هواشناسی Dark Sky

حالا برای قسمت باحالش. ما آماده هستیم تا از API Dark Sky برای ایجاد داشبورد آب و هوا و ثبت تاریخ آب و هوا برای مکانی که انتخاب می کنیم ، استفاده کنیم. برای انجام این کار ، ما از اسکریپت پایتون استفاده می کنیم: https://github.com/initialstate/darksky/blob/master/darksky.py. این اسکریپت به سادگی API Dark Sky را با استفاده از کلید API شما فراخوانی می کند و اطلاعات آب و هوا را در یک بازه زمانی مشخص بازیابی می کند. همچنین این داده ها را به حساب وضعیت اولیه شما منتقل می کند ، که به شما امکان می دهد داشبورد آب و هوا Dark Sky را ایجاد کنید.

شما می توانید این اسکریپت را در Pi خود کپی کنید یا از طریق مخزن GitHub که قبلاً کلون کردیم ، به آن دسترسی پیدا کنید. با تایپ کردن به پوشه darksky خود می توانید این کار را انجام دهید:

$ cd darksky

از اینجا ، می توانید به فایل پایتون دسترسی داشته باشید که برای ایجاد داشبورد آب و هوا اجرا می کنیم. قبل از اجرا ، باید پارامترهای مورد نظر خود را تنظیم کرده و کلیدهای خود را وارد کنید. نانو را در فایل darksky.py تایپ کنید:

$ nano darksky.py

سپس قسمت نزدیک بالای اسکریپت را ویرایش کنید:

# --------- تنظیمات کاربر ---------

CITY = "نشویل" GPS_COORDS = "36.1628414 ، -86.780199" DARKSKY_API_KEY = "کلید API تاریک خود را در اینجا قرار دهید" BUCKET_NAME = ": تا حدی_آفتابی:" + شهر + "آب و هوا" BUCKET_KEY = ACAC = "ds1" اینجا کلید "MINUTES_BETWEEN_READS = 15 # ---------------------------------

شما باید مختصات GPS مورد نظر و نام شهر را تنظیم کنید. شما همچنین باید کلید API Dark Sky و کلید دسترسی به حساب حالت اولیه خود را وارد کنید ، در غیر این صورت داده های شما به جایی نمی رسد. پارامتر MINUTES_BETWEEN_READS تعیین می کند که چند بار اسکریپت شما از API Dark Sky برای اطلاعات آب و هوا نظرسنجی می کند. 15 دقیقه یک فاصله زمانی طولانی مدت را فراهم می کند. به منظور آزمایش کوتاه مدت ، می توانید این را روی 0.5 دقیقه تنظیم کنید. تغییرات خود را انجام دهید سپس برای خروج و ذخیره ، کنترل+X را وارد کنید.

هنگامی که پارامترهای خود را تنظیم کردید ، آماده اجرای اسکریپت خود هستید:

$ python darksky.py

اگر به Pi خود وارد شده اید و می خواهید این اسکریپت را برای مدت طولانی بدون وقفه رها کنید ، می توانید از دستور nohup (بدون قطع کردن) به شرح زیر استفاده کنید:

$ nohup python darksky.py &

این اسکریپت کمی بیشتر از خواندن اطلاعات آب و هوا و ارسال آن به حالت اولیه انجام می دهد. این اسکریپت از پشتیبانی ایموجی موجود در ابزارهای Initial State استفاده می کند تا داشبورد کمی جالب تر شود. شما می توانید منطق مورد استفاده برای گرفتن وضعیت آب و هوا از نماد فعلی -> و تبدیل آن به توکن ایموجی در عملکرد weather_icon را مشاهده کنید. چیزی مشابه برای مرحله ماه در عملکرد moon_icon و جهت باد در عملکرد wind_dir_icon اتفاق می افتد.

مرحله 5: نتیجه گیری

نتیجه
نتیجه
نتیجه
نتیجه

به حساب وضعیت اولیه خود بروید و به داده های خود نگاه کنید. من تمام مقادیر درصدی خود را به قوس سنجها ، بارش را به مایع سنج و دما را به دماسنج تغییر دادم. شما می توانید به هر نوع کاشی تغییر دهید و رنگهای خود را برای اندازه گیری ها و نمودارهای خطی انتخاب کنید. می توانید داشبورد خود را تیره یا روشن کنید و محصول نهایی را با استفاده از iFrame جاسازی شده در وب سایت قرار دهید.

اگر می خواهید از طرح داشبورد از یک اشتراک عمومی به عنوان داشبورد خود استفاده کنید ، می توانید با دنبال کردن دستورالعمل های موجود ، یک طرح را در سطل داده خود وارد کنید. می توانید تصویر زمینه را به داشبورد خود اضافه کنید تا زمینه بیشتری به آن داده شود.

نشانی اینترنتی اشتراک عمومی داشبورد ما https://go.init.st/0hw08py است.

اکنون شما API Dark Sky را فرا گرفته اید و امکانات بی پایان است! مقدار نامحدودی API رایگان آنلاین برای کاوش وجود دارد بنابراین شروع کنید.

توصیه شده: