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

یاهو یکی از بهترین وب سرویسها رو برای وصعیت آب و هوا ارائه میکند و استفاده از آن خیلی ساده است. برای استفاده از آن باید اول کد شهر مورد نظرتان را از Yahoo weather بدست آورید، برای اینکار به صفحه http://weather.yahoo.com/ رفته و شهر مورد نظرتان را انتخاب کنید.

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

درخواست RSS

درخواست خوراک RSS آب و هوا بصوررت درخواست ساده HTTP GET است که با یک URL پایه شروع شده و سپس بعد از علامت سوال (؟) پارامترها و مقادیر را اضافه کنید. پارامترهای چندگانه با یک آمپرستر (&) جدا می شوند. مثال زیر قسمت اصلی و ثابت درخواست آب و هوا را نشان می دهد:

https://weather-ydn-yql.media.yahoo.com/forecastrss

بعد از درخواست فوق، علامت سوال قرار گرفته و دو پارامتر تعیین می شود:

  1. پارامتر w  : برای تعیین  WOEID : هر شهری دارای یک WOEID منحصر بفرد است که برای شهر مورد نظرتان باید آن را بدانید. کد شهر را باید تعیین کنید
  2. پارامتر u  : برای تعیین مقیاس دما-  درجه یا فارنهایت

به عنوان مثال، برای دریافت آب و هوا برای دفتر مرکزی یاهو  در Sunnyvale، CA، از کد WOEID برای Sunnyvale (2502265) استفاده کنید:

https://weather-ydn-yql.media.yahoo.com/forecastrss?w=2502265

پارامتر مکان(w) باید WOEID باشد. برای پیدا کردن WOEID مربوط به شهر خود را از صفحه اصلی آب و هوای یاهو استفاده کنید .همچنین می توانید WOEID را با وارد کردن کد پستی خود در صفحه اصلی دریافت کنید. به عنوان مثال، اگر در صفحه وضعیت آب و هوای یاهو مشخصات آب و هوایی شهرتان را مشاهده می کنید و آدرس صفحه بصورت زیر است:

https://www.yahoo.com/news/weather/iran/south-khorasan/birjand-12843526

این آدرس مربوط به شهر بیرجند بوده و کد WOEID  آن 12843526 است.

و برای بدست آوردن وضعیت آب و هوای شهر بیرجند باید درخوست زیر را بفرستید:

https://weather-ydn-yql.media.yahoo.com/forecastrss?w=12843526&u=c

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

سرویس آب و هوای یاهو یک فید RSS 2.0 را در پاسخ به این درخواست ارائه می دهد. برای استفاده از اطلاعات دریافتی باید فایل RSS دریافتی را تجزیه کنید.