|
گرفتن دادهٔ OSM
هنگامی که میخواهید تازهترین دادهٔ OpenStreetMap را دریافت کنید، سادهترین راه این است که گُزیدهای (extract) را از یک وبسایت دانلود کنید. سرویسهای وبی مختلفی وجود دارد که گزیدههای داده (data extracts) را برای منطقهٔ انتخابی شما ارائه میکنند. دانلود گزیدههای دادهGeoFabrikGeoFabrik شرکتی است که تخصصش کار با OpenStreetMap است. آنها گزیدههای رایگان متنوعی را در قالب شیپفایل و قالب خام OSM در وبسایت دانلود خود ارائه میکنند. مزیت دانلود دادهٔ GeoFabrik این است که روزانه روزآمد میشود و آسان و قابلاطمینان است. یکی از معایب آن این است که داده بر اساس کشور استخراج شده است و همهٔ کشورها در دسترس نیستند. BBBikeBBBike شیپفایلها و قالب خام OSM را برای شهرهای سراسر جهان فراهم میکند که هفتهای یک بار استخراج میشوند. در صورتی که دنبال گزیدههای داده برای فقط یک شهر هستید این سایت مفید است.
گُزیدههای شخصیسازیشدهبرونبردهای HOTگروه بشردوستانهٔ OpenStreetMap سرویسی ایجاد کرده است که به کاربران اجازه میدهد منطقهٔ موردنظرشان را استخراج کنند و همچنین از پیشتنظیمهای JOSM استفاده کنند تا تگهای دلخواه را در فایل استخراجشده قرار دهند. این سرویس در همهٔ کشورهایی که HOT در آنجا کار میکند از طریق سایت export.hotosm.org در دسترس است. BBBikeبا استفاده از سرویس extract.bbbike.org میتوانید منطقهٔ خود را از هر نقطهٔ جهان انتخاب کنید. از معایب آن این است که نمیتوانید تگهای سفارشی انتخاب کنید و روی حجم دادهٔ دانلودی محدودیت وجود دارد. OverpassOverpass یک API (Application Programming Interface = واسط برنامهسازی کاربردی) برای استخراج داده از یک کپی فقط-خواندنی از پایگاهدادهٔ اصلی OpenStreetMap است که میتواند تقریباً هر مقدار دلخواهی از داده را تحویل دهد. با استفاده از یک زبان پرسوجو میتوانید مشخص کنید که چه مجموعهدادهای را میخواهید به دست آورید. میتوانید بهطور مستقیم با تولید یک http-request یا از طریق واسط کاربری overpass turbo این کار را بکنید. Overpass TurboOverpass Turbo یک پرسوجوساز تعاملی است که ابتدا باید روی منطقهٔ مناسب در نقشه زوم کنید. پرسوجوی خود را در قسمت سمت چپ صفحه وارد کنید و با استفاده از دکمههای بالای واسط کاربری کارهای لازم را انجام دهید. اگر به این زبان پرسوجو آشنایی ندارید، استفاده از دستیار پرسوجو (query wizard) باید نقطهٔ شروع شما باشد. در ویکی OSM شرح کاملی از نحو (syntax) این زبان پرسوجو و همچنین مجموعهای از مثالها ارائه شده است. همهٔ دادهای که توسط پرسوجوی شما انتخاب شدهاست، روی نقشه برجسته میشوند که میتوانید بعداً آنها را تغییر دهید. Run را بزنید تا نتیجهٔ نمایشیافته تازه شود. هنگامی که از نتیجه راضی بودید، گزینهٔ Export انتخابهای متعددی در اختیارتان میگذارد، از جمله دادهٔ خام OSM. اگر مقدار داده محدود است، همچنین میتوانید با کلیک روی آخرین دکمههای سمت راست در بالا بین نمایش نقشه و نمایش داده جابهجا شوید. گزینهٔ Export -> Query -> compact OverpassQL لینکی تولید میکند که در Overpass API قابلاستفاده است. اگر قصد دارید پرسوجوی دلخواهتان را طراحی کنید تا زیرمجموعهای از دادهٔ یک منطقهٔ بزرگ را به دست آورید، بهتر است این پرسوجو را در Overpass Turbo و روی یک منطقهٔ کوچک آزمایش کنید و بهبود دهید. سپس میتوانید زوم را به تمام منطقهٔ موردنظرتان گسترش دهید و آدرس اینترنتی پرسوجوی ایجادشده را مستقیماً در API به کار ببرید. بخش بعدی چگونگی انجام این کار را توضیح میدهد. Overpass APIOverpass API سرویسی اختصاصی است که برای پرسوجو (و نه نوشتن دادهٔ OpenStreetMap) بهینه شده است. با توجه به این بهینهسازی، در مقایسه با API اصلی بسیار سریع عمل میکند و عملاً هیچ محدودیتی در میزان انتقال داده ندارد. چندین نمونه از این سرویس در اینترنت وجود دارد، یکی که در مثال زیر استفاده شده، اطلاعاتی نیز در صفحهٔ اصلیاش ارائه میکند. اگر URL یک پرسوجوی سالم برای ارسال درخواست HTTP به API Overpass دارید، با ابزاری مانند wget میتوانید دادهٔ خام OSM را مستقیماً از کارساز دانلود و ذخیره کنید. wget برای سیستمعاملهای مختلف موجود است، اینجا را ببینید. قطعهکد زیر اسکریپتی برای bash shell (رایج در سیستمهای Unix) است که تمام دادهٔ موجود در یک bounding box (کادر محصورکننده) مشخص را به دست میآورد:
خلاصهسرویسهای ذکرشده در این فصل مواردی است که کاربران متوسط برای دریافت دادهٔ OSM موردنظرشان نیاز دارند تا بتوانند آن را در نرمافزار GIS به کار ببرند. با این حال، شاید خودتان بخواهید روشهای قدرتمندتری را برای کار با داده فرا بگیرید. بخشهای باقیمانده در این فصل کاملاً فنّی هستند اما روشهای پیشرفتهتری را برای دسترسی به و دستکاری دادهٔ OSM نشان میدهند.
این فصل مفید بود؟
به ما بگویید و کمک کنید راهنماها را بهتر کنیم!
|