یک ربات خزنده وب، crawler یا موتور جستجو محتوا را از سراسر اینترنت دانلود و فهرست می کند. هدف چنین رباتی این است که بیاموزد (تقریبا) هر صفحه وب در وب درباره چه چیزی است، به طوری که در صورت نیاز بتوان اطلاعات را بازیابی کرد. آنها را "خزنده های وب" می نامند زیرا خزیدن اصطلاح فنی برای دسترسی خودکار به یک وب سایت و به دست آوردن داده ها از طریق یک برنامه نرم افزاری است.
این ربات ها تقریبا همیشه توسط موتورهای جستجو اداره می شوند. با اعمال یک الگوریتم جستجو بر روی دادههای جمعآوریشده توسط خزندههای وب، موتورهای جستجو میتوانند لینکهای مرتبطی را در پاسخ به پرسشهای جستجوی کاربر ارائه دهند و فهرستی از صفحات وب را ایجاد کنند که پس از تایپ کاربر در Google یا Bing (یا موتور جستجوی دیگر) نشان داده میشوند.
یک ربات وب کراولر مانند کسی است که تمام کتابهای یک کتابخانه به هم ریخته را مرور میکند و یک فهرست کارت جمع میکند تا هر کسی که از کتابخانه بازدید میکند بتواند به سرعت و به راحتی اطلاعات مورد نیاز خود را پیدا کند. برای کمک به دستهبندی و مرتبسازی کتابهای کتابخانه بر اساس موضوع، سازماندهنده عنوان، خلاصه و بخشی از متن داخلی هر کتاب را میخواند تا بفهمد درباره چیست.
با این حال، برخلاف کتابخانه، اینترنت از انبوه کتابهای فیزیکی تشکیل نشده است، و این امر تشخیص اینکه آیا تمام اطلاعات لازم به درستی نمایهسازی شدهاند یا اینکه مقادیر زیادی از آن نادیده گرفته شدهاند، دشوار است. برای تلاش برای یافتن تمام اطلاعات مرتبطی که اینترنت ارائه می دهد، یک ربات خزنده وب با مجموعه خاصی از صفحات وب شناخته شده شروع می کند و سپس با لینک های داخلی از آن صفحات به صفحات دیگر دنبال می کند.
مشخص نیست که چه مقدار از اینترنت در دسترس عموم توسط ربات های موتور جستجو خزیده می شود. برخی منابع تخمین میزنند که تنها 40 تا 70 درصد اینترنت برای جستجو فهرستبندی میشود - و این شامل میلیاردها صفحه وب است.
خزنده های وب (Web Crawler) چگونه کار می کنند؟
اینترنت دائما در حال تغییر و گسترش است. از آنجایی که نمی توان تعداد کل صفحات وب را در اینترنت دانست، ربات های خزنده وب از یک seed یا لیستی از URL های شناخته شده شروع می شوند. آنها ابتدا در داخل صفحات وب موجود در آن URL ها می خزند. همانطور که آنها در آن صفحات وب می خزند، پیوندهایی به URL های دیگر پیدا می کنند، و آنها را به لیست صفحاتی اضافه می کنند تا در مرحله بعدی خزیده شوند.
با توجه به تعداد زیادی از صفحات وب در اینترنت که می توانند برای جستجو فهرست شوند، این روند می تواند تقریباً به طور نامحدود ادامه یابد. با این حال، یک وب کراولر از سیاستهای خاصی پیروی میکند که باعث میشود انتخابیتر در مورد اینکه کدام صفحات خزیده شود، به چه ترتیبی خزیده شود، و هر چند وقت یکبار باید دوباره آنها را بخزد تا بهروزرسانیهای محتوا را بررسی کند.
اهمیت نسبی هر صفحه وب - اکثر خزندههای وب کل اینترنت در دسترس عموم را نمیخزند. درعوض، بر اساس تعداد صفحات دیگری که به آن صفحه پیوند میدهند، تعداد بازدیدکنندگانی که آن صفحه میگیرد و سایر عواملی که احتمال وجود اطلاعات مهم صفحه را نشان میدهند، تصمیم میگیرند که در کدام صفحات ابتدا بخزند.
ایده این است که صفحه وبی که توسط بسیاری از صفحات وب دیگر مورد استناد قرار میگیرد و بازدیدکنندگان زیادی دارد، احتمالاً حاوی اطلاعات معتبر و باکیفیت است، بنابراین بسیار مهم است که موتور جستجو آن را ایندکس کند - درست مانند یک کتابخانه. باید مطمئن باشید که نسخههای زیادی از یک کتاب را نگه میدارید چون توسط افراد زیادی بررسی میشود.
بازدید مجدد از صفحات وب - محتوای وب به طور مداوم به روز می شود، حذف می شود یا به مکان های جدید منتقل می شود. وب کراولرها به طور دوره ای نیاز به بازدید مجدد از صفحات برای اطمینان از ایندکس شدن آخرین نسخه محتوا دارند.
الزامات Robots.txt - خزنده های وب همچنین بر اساس پروتکل robots.txt (همچنین به عنوان پروتکل حذف ربات شناخته می شود) تصمیم می گیرند که در کدام صفحات میتوانند بخزند. قبل از خزیدن یک صفحه وب، آنها فایل robots.txt که توسط وب سرور آن صفحه میزبانی شده است را بررسی می کنند. فایل robots.txt یک فایل متنی است که قوانین دسترسی هر ربات به وب سایت یا برنامه میزبانی شده را مشخص می کند. این قوانین تعیین میکنند که رباتها در کدام صفحات میتوانند بخزند و کدام پیوندها را میتوانند دنبال کنند. (دقت کنید این دستورات حتما برای موتورهای جستجو الزام ایجاد نمیکنن)
همه این عوامل در الگوریتمهای اختصاصی که هر موتور جستجو در رباتهای خود ایجاد میکند، وزن متفاوتی دارند. وب کراولرها از موتورهای جستجوی مختلف کمی متفاوت رفتار می کنند، اگرچه هدف نهایی یکسان است
چرا به خزنده های وب «عنکبوت یا Spiders» می گویند؟
اینترنت، یا حداقل بخشی که اکثر کاربران به آن دسترسی دارند، به عنوان وب جهانی نیز شناخته می شود طبیعی است که ربات های موتورهای جستجو را «عنکبوت یا Spiders» بنامیم، زیرا آنها در سراسر وب می خزند، درست همانطور که عنکبوت های واقعی روی تار عنکبوت می خزند.
آیا ربات های خزنده وب همیشه باید اجازه دسترسی به ویژگی های وب را داشته باشند؟
این به ویژگی وب و به عوامل مختلفی بستگی دارد. وب کراولرها برای فهرست بندی محتوا به منابع سرور نیاز دارند آنها درخواست هایی را ارائه می دهند که سرور باید به آنها پاسخ دهد، درست مانند بازدید کاربر از یک وب سایت یا سایر ربات ها که به یک وب سایت دسترسی دارند. بسته به مقدار محتوا در هر صفحه یا تعداد صفحات سایت، ممکن است به نفع اپراتور وب سایت باشد که اجازه ایندکس جستجو را زیاد ندهد، زیرا ایندکس بیش از حد می تواند بر سرور مازاد باشد، هزینه های پهنای باند را افزایش دهد یا هر دو.
همچنین، توسعهدهندگان یا شرکتها ممکن است نخواهند برخی از صفحات وب قابل شناسایی باشند، مگر اینکه قبلاً به کاربر پیوندی به صفحه داده شده باشد (بدون قرار دادن صفحه در گرو پرداخت یا ورود به سیستم). یکی از نمونههای چنین موردی برای شرکتها زمانی است که آنها یک Landing Page اختصاصی برای یک کمپین بازاریابی ایجاد میکنند، اما نمیخواهند کسی که هدف کمپین قرار نمیگیرد به صفحه دسترسی پیدا کند. به این ترتیب آنها می توانند پیام رسانی را تنظیم کنند یا عملکرد صفحه را دقیقاً اندازه گیری کنند. در چنین مواردی شرکت می تواند یک برچسب "noindex" را به Landing Page اضافه کند و در نتایج موتور جستجو نشان داده نخواهد شد. آنها همچنین میتوانند یک برچسب «disallow» را در صفحه یا فایل robots.txt اضافه کنند و عنکبوتهای موتورهای جستجو اصلاً در آن نمیخزند.
صاحبان وبسایتها ممکن است به دلایل مختلف دیگر نخواهند به رباتهای خزنده وب بخشی یا تمام سایتهایشان اجازه خزیدن بدهند. به عنوان مثال، وب سایتی که به کاربران امکان جستجو در سایت را می دهد ممکن است بخواهد صفحات نتایج جستجو را مسدود کند، زیرا این صفحات برای اکثر کاربران مفید نیستند. سایر صفحات تولید شده به صورت خودکار که فقط برای یک کاربر یا چند کاربر خاص مفید هستند نیز باید مسدود شوند.
تفاوت بین خزیدن وب و خراش وب (web scraping) چیست؟
خراش دادن وب (web scraping) ، خراش دادن داده یا خراش محتوا زمانی است که یک ربات محتوای یک وب سایت را بدون اجازه دانلود می کند، اغلب به قصد استفاده از آن محتوا برای اهداف مخرب است.
اسکرپینگ وب معمولاً بسیار هدفمندتر از خزیدن وب است. اسکراپرهای وب ممکن است فقط به دنبال صفحات خاص یا وب سایت های خاص باشند، در حالی که خزنده های وب به دنبال پیوندها و خزیدن مداوم صفحات هستند.
همچنین، رباتهای اسکریپر وب ممکن است فشاری را که به سرورهای وب وارد میکنند نادیده بگیرند، در حالی که وب کراولرها، بهویژه آنهایی که از موتورهای جستجوی اصلی هستند، از فایل robots.txt اطاعت میکنند و درخواستهای خود را محدود میکنند تا بر وب سرور سربار اضافه نکنند.
چگونه خزنده های وب روی سئو تاثیر می گذارند؟
سئو مخفف search engine optimization است، و نظم و انضباط آماده سازی محتوا برای رتبه گرفتن در نتایج جستجو است به طوری که یک وب سایت بالاتر در نتایج موتورهای جستجو نشان داده شود.
اگر رباتهای عنکبوتی یک وبسایت را بررسی نکنند، نمیتوان آن را ایندکس کرد و در نتایج جستجو نشان داده نمیشود. به همین دلیل، اگر یک مالک وب سایت می خواهد ترافیک ارگانیک را از نتایج جستجو دریافت کند، بسیار مهم است که ربات های خزنده وب را مسدود نکند.
لیست خزنده های وب
ربات های موتورهای جستجوی اصلی:
- Google: Googlebot (در واقع دو خزنده، Googlebot Desktop و Googlebot Mobile، برای جستجوهای دسکتاپ و تلفن همراه دارد)
- Bing: Bingbot
- DuckDuckGo: DuckDuckBot
- Yahoo! Search: Slurp
- Yandex: YandexBot
- Baidu: Baiduspider
- Exalead: ExaBot
همچنین بسیاری دیگر از وب کراولرها وجود دارند که برخی از آنها با هیچ موتور جستجویی مرتبط نیستند.