ساخت سیستم اعلام آخرین اخبار ویروس کرونا به کمک وب سرویس ها!
آخرین اخبار ویروس کرونا موضوعی که این روز ها سر تیتر اخبار ایران و جهان می باشد. به دلیل اهمیت اخبار مربوط به آن طی چند هفته اخیر مردم در سراسر جهان پیگیر خبر های پیرامون این بیماری هستند. از این رو بسیاری به فکر کمک و یافتن راهکاری برای مقابله با این معضل جهانی افتاده اند.
قدم اول برای یک برنامه نویس موفق، پیدا کردن نیاز بازار و چیزی هست که مخاطب ها تقاضا میکنن. در حال حاضر کافیه توی گوگل ترند کلمه ی کرونا رو سرچ کنید تا متوجه بشید این اخبار چقدر برای تمام دنیا مهمه. از طرفی نقش بچه های توسعه دهنده تو این شرایط برای «کشور و هموطنان» میتونه خیلی پررنگ باشه. توی این پست میخوایم روشی برای ساخت سیستم اعلام آخرین اخبار ویروس کرونا رو بهتون یاد بدیم. با ما همراه باشید !
اطلاع رسانی صحیح یکی از روشهای پیشگیری کرونا محسوب میشود. با همین ذهنیت، برخی از متخصصین و توسعه دهندگان تصمیم به نوشتن یک اسکریپت در پایتون (Python) گرفته اند که بوسیله آن در زمان خطر و رسیدن به وضعیت قرمز، برای کاربران پیامک هشدار ارسال خواهد شد، و آنها را از آخرین وضعیت آگاه خواهد نمود.
این سیستم شامل یک نرم افزارجستجوی وب (Web Scraping) و یک وب سرویس (api) پیامک میباشد.
استخراج و جمع آوری اطلاعات مربوط به سیستم اعلام آخرین اخبار ویروس کرونا
برای ساخت سیستم اعلام اخرین اخبار ویروس کرونا ابتدا، به یک منبع اطلاعاتی برای پیگیری اخبار و آمارهای ویروس کرونا نیازمندیم که بتواند به صورت لحظهای آخرین اخبار مربوط به ویروس را به سیستم ما برساند. خوشبختانه سایتهای بسیاری در این زمینه وجود دارند که به صورت زنده آخرین تعداد مبتلایان و کشته شدگان هر منطقه را اعلام میکنند. مانند پلتفرم اَپی اکو، که در آن به سایت ها و وب سرویس های مختلف خبری مانند https://newsapi.org و یا سازمان بهداشت جهانی می توان دست یافت، و آمارهای مربوط به مبتلایان و قربانیان کرونا به صورت آنلاین منتشر می شوند.
برای ساخت این سیستم در ابتدا به بررسی المانهای مورد نیاز و مهم در سایت آمار دهنده باید پرداخت. برای شروع میتوان با بررسی کدهای وب سایت کار را آغاز نمود. برای این کار کدهای HTML سایت را بررسی نموده و المانهای بکار رفته در صفحه را خواهیم دید. بدین صورت میتوان اطلاعات مربوط به یک موضوع خاص (مثلا تعداد مبتلایان به ویروس در هر کشور) را استخراج کرد.
جمع آوری اطلاعات
یکی از بهترین روشهای استخراج و جمع آوری اطلاعات، Selenium است که راههای مختلفی را برای جستجو و استخراج المانها از یک وب سایت را ارائه میدهد. یکی از این راهها استفاده از فانکشن (تابع) find_elements_by_xpath() است. این تابع از شما میخواهد تا XPath بخش مورد نظر در وب سایت را در آن وارد کنید، و بعد تابع به دنبال تمام المانهای درخواستی شما در سایت خواهد گشت. با این روش همه اطلاعات لازم برای سرویس خود مانند تعداد مبتلایان، قربانیان، افراد بهبود یافته در هر منطقه و کشور را میتوانید از سایت استخراج کنید.
هدف گذاری برای ارسال پیامک هشدار
برای ارسال پیامک سیستم اعلام آخرین اخبار ویروس کرونا، به یک وب سرویس ارسال پیامک مانند RayganSMS API، وب سرویس SMS.ir، وب سرویس پیامک بیتل، وب سرویس ملی پیامک و وب سرویس پیام کوتاه کاوه نگار نیاز داریم. با دریافت این ای پی آی ها، و ترکیب آن با سیستم، شما میتوانید سیستم را در تارگت خاصی تنظیم نموده و پس از آن پیامک به موقع برای کاربران ارسال خواهد شد.
راه اندازی اسکریپت
از اینجا به بعد، راههای زیادی برای راهاندازی و اجرای چند بار در روز این اسکریپت وجود دارد. یکی از این راهها قرار دادن این اسکریپت بر روی سیستم خودتان است. در اینصورت میتوانی از سرویسهایی مانند cron (Mac or Linux)، و یا Task Scheduler (Windows) برای زمانبندی اسکریپت استفاده کرد تا سیستم در ساعت مختلفی در روز بتواند با دریافت اطلاعات از سایت، خود را بروز کند.
البته این پروژه تنها بخش ابتدایی و فاز اولیه از یک سیستم هشدار است. برای بهبود و استفاده بیشتر از این سیستم میتوان از طریق اضافه کردن وب سرویس ها و منابع اطلاعاتی مختلف، ویژگیهای بیشتری را به این اپلیکیشن اضافه نمود. قابلیتهایی مانند ارسال پیامکهای اطلاع رسانی از مراکز کمک رسانی، آموزش روشهای پیشگیری و درمان احتمالی و … اضافه نمود.
شما نیز اگر قصد ساخت یک سرویس و یا اپلیکیشن خاص، برای کمک به هموطنان خود را دارید، حتما با تیم متخصص اَپی اِکو تماس بگیرید. اپی اکو اولین وب سرویس مارکت ایرانی است، که میتوانند در آن (API) های مورد نظر خود را یافته، به آنها متصل شده و همچنین آنها را مدیریت کنند. ما در اپی اکو لیستی از پرکاربردترین وب سرویس های ایرانی را برای شما آماده کرده ایم که میتوانید با کلیک بر لینک بالا از api های موجود استفاده نمایید.