قسمت دوم – نحوه شناساییAPI یک سایت
برای شناسایی APIهای یک سایت که داده واکشی میکنند، میتوانید از روشهای مختلفی استفاده کنید. APIهای یک سایت معمولاً برای بارگذاری دادهها به صورت دینامیک (یعنی بدون رفرش کردن صفحه) از جاوا اسکریپت و درخواستهای HTTP استفاده میکنند. در اینجا برخی از روشهای شناسایی و بررسی APIهای سایتها برای تحلیل داده آورده شده است:
- استفاده از ( Developer Tools ) ابزار توسعهدهنده مرورگر
یکی از سادهترین روشها برای شناسایی APIهای یک سایت، استفاده از ابزارهای توسعهدهنده مرورگر مانند Chrome DevTools است. این ابزار به شما اجازه میدهد تا تمامی درخواستها و پاسخهایی که بین مرورگر و سرور در حال تبادل هستند را مشاهده کنید.
مراحل:
باز کردن Developer Tools:
در مرورگر Google Chrome یا سایر مرورگرها، روی صفحه راستکلیک کنید و گزینه Inspect یا Inspect Element را انتخاب کنید، یا از کلیدهای میانبر Ctrl + Shift + I (یا Cmd + Option + I در مک) استفاده کنید.
رفتن به تب Network:
پس از باز شدن ابزارهای توسعهدهنده، به تب Network بروید. در اینجا میتوانید تمامی درخواستهای HTTP، شامل APIها را مشاهده کنید.
بارگذاری مجدد صفحه یا انجام فعالیتهای مختلف:
صفحه را مجدداً بارگذاری کنید یا اقداماتی مانند جستجو یا فیلتر کردن انجام دهید. این اقدامات باعث ارسال درخواستهای جدید به سرور میشود.
فیلتر کردن نوع درخواستها:
در بخش Filter از ابزار Developer Tools، میتوانید نوع درخواستها را فیلتر کنید و فقط XHR (XMLHttpRequest) یا Fetch را مشاهده کنید. اینها معمولاً درخواستهای AJAX و API هستند که برای واکشی داده استفاده میشوند.
مشاهده درخواستها و URLهای API:
هنگامی که یک درخواست API ارسال میشود، در ستون Name یا URL میتوانید آدرس API مورد نظر را مشاهده کنید. شما میتوانید درخواستهای GET، POST، PUT و DELETE را بررسی کنید.
بررسی پارامترها و دادهها:
برای هر درخواست، میتوانید پارامترهای ارسال شده در Query Params یا Request Payload را بررسی کنید. این اطلاعات نشان میدهند که چه دادههایی به سرور ارسال میشود و چه دادههایی به عنوان پاسخ دریافت میشود.
به طور مثال ما این کار را بر روی سایت بورس https://www.tsetmc.com/ انجام دادیم و در پایین صفحه متد آن را مشاهده می کنید .
حالا اگر بر رویه این متد کلیک کنید داده های آن را مشاهده خواهید کرد.
- استفاده از فایلهای JavaScript سایت
بسیاری از APIها در سایتها از طریق فایلهای JavaScript فراخوانی میشوند. با بررسی این فایلها میتوانید مسیرهای API و پارامترهای مورد استفاده را پیدا کنید.
مراحل:
مشاهده فایلهای JavaScript:
در ابزار Developer Tools، به تب Sources بروید و فایلهای JavaScript که به سایت بارگذاری میشوند را بررسی کنید.
جستجوی API:
در داخل فایلهای JavaScript به دنبال عبارتهایی مانند fetch, XMLHttpRequest, axios, $.ajax یا window.location بگردید. اینها معمولاً نشانههایی از فراخوانی API هستند.
شناسایی آدرسهای API:
در بسیاری از مواقع، این درخواستها با آدرسهای API در قالب URL مشخص میشوند.
- بررسی (Documentation API )مستندات API
بسیاری از وبسایتها و سرویسهای آنلاین برای APIهای خود مستندات رسمی دارند. اگر سایت مورد نظر API عمومی داشته باشد، احتمالاً مستندات آن در دسترس است.
مراحل:
جستجو برای مستندات API:
میتوانید با جستجو در گوگل یا از طریق سایت اصلی به دنبال مستندات API آن سایت باشید. عبارتهایی مانند site:example.com API documentation یا example.com REST API معمولاً میتواند نتایج خوبی بدهد.
بررسی بخشهای API عمومی:
بعضی سایتها APIهایی را برای توسعهدهندگان به صورت عمومی ارائه میدهند که میتوانید از آنها برای واکشی دادهها استفاده کنید.
- بررسی URLهای API در اسناد HTML صفحه
برخی از سایتها ممکن است آدرسهای API را درون اسناد HTML صفحه ذخیره کنند. این اطلاعات میتوانند در قالب دادههای JavaScript یا پارامترهای hidden (مخفی) قرار داشته باشند.
مراحل:
مشاهده سورس HTML:
با کلیک راست روی صفحه و انتخاب گزینه View Page Source، میتوانید سورس HTML صفحه را مشاهده کنید.
جستجوی URLهای API:
در داخل سورس HTML، به دنبال کلمات کلیدی مانند api, endpoint, json, یا data بگردید. ممکن است APIهای مورد استفاده در سایت در اینجا نیز پیدا شوند.
- استفاده از ابزارهای خاص تحلیل API
ابزارهایی مانند Postman یا Insomnia میتوانند برای شناسایی و تست APIهای یک سایت مفید باشند. با استفاده از این ابزارها، میتوانید درخواستهای مختلف به API ارسال کنید و پاسخ آنها را بررسی کنید.
جمعبندی
ابزار Developer Tools در مرورگر یکی از بهترین روشها برای شناسایی APIهای مورد استفاده در یک سایت است.
فایلهای JavaScript سایت ممکن است شامل آدرسهای API باشند.
مستندات API، در صورت موجود بودن، بهترین منبع برای شناسایی APIهاست.
سورس HTML و URLهای مخفی ممکن است حاوی آدرسهای API باشند.
Postman و Insomnia برای تست و شناسایی APIها مفید هستند.
پس از شناسایی APIها، میتوانید از کتابخانههایی مانند requests در پایتون برای واکشی دادهها استفاده کنید.
دیدگاه خود را ثبت کنید
تمایل دارید در گفتگوها شرکت کنید؟در گفتگو ها شرکت کنید.