یه کتابخونه ی بزرگ، با میلیون ها کتاب و مقاله رو تصور کن. فکر کن که هیچ راهی برای پیدا کردن کتاب مورد نظرت نداشته باشی؛ نه فهرستی، نه کتابدار راهنمایی و نه حتی نشونی از اینکه هر کتاب کجا قرار داره. وحشتناک به نظر می رسه، نه؟ خب، اینترنت در اوایل دهه ۹۰ میلادی دقیقاً همین وضعیت رو داشت. وب سایت ها یکی پس از دیگری به وجود می اومدن و پیدا کردن اطلاعات مفید بین اون ها کار حضرت فیل بود.
اما یه روز، یه مهندس جوان، با همین مشکل روبرو شد. اون تو کتابخونه ی اینترنت گم شده بود و به این فکر افتاد که چطور می تونه این حجم عظیم اطلاعات رو به راحتی پیدا کنه. پیش خودش گفت: "چرا نتونیم یه کتابدار خودکار داشته باشیم که همیشه در دسترس باشه و هر چیزی رو که می خوایم، برامون پیدا کنه؟"
اینجا بود که این مهندس جوان اولین نسخه از یه برنامه به نام Web Crawler یا خزنده وب رو ساخت. این برنامه مثل یه کتابدار روباتیک، شروع به گشتن توی اینترنت کرد، صفحات رو یکی یکی پیدا کرد، خوند و اطلاعات مهم و مفید رو استخراج کرد. اینجوری، وقتی کسی دنبال اطلاعات می گشت، Web Crawler بهش کمک می کرد تا سریع تر به هدفش برسه.
حالا تصور کن اگه این کتابدار روباتیک نبود، چقدر کارها سخت تر و زمان برتر می شد. هر بار که می خواستی یه مطلب پیدا کنی، باید ساعت ها وقت صرف می کردی و شاید اصلاً به نتیجه نمی رسیدی. اینجوری، Web Crawlerها به یه نجات بخش تبدیل شدن که دسترسی به اطلاعات رو برای همه آسون تر کردن.

Web Crawler که بهش عنکبوت وب (spider) یا ربات موتور جستجو هم می گن، یه برنامه ست که محتواهای مختلف از سرتاسر اینترنت رو دانلود و ایندکس می کنه. هدف این ربات ها اینه که بفهمن هر صفحه ای تو اینترنت درباره چی صحبت می کنه، تا وقتی که نیاز داریم، اطلاعات مورد نظر رو بهمون نشون بدن. بهشون "Web Crawler" یا "خزنده وب" می گن چون "Crawling" یا "خزیدن" یه اصطلاح فنیه برای دسترسی خودکار به سایت ها و جمع آوری داده ها توسط یه برنامه نرم افزاری.
این ربات ها معمولاً توسط موتورهای جستجو اداره می شن. با استفاده از الگوریتم های جستجو روی داده هایی که Web Crawlerها جمع آوری می کنن، موتورهای جستجو می تونن لینک های مرتبط رو در پاسخ به جستجوی کاربران ارائه بدن. این همون چیزیه که وقتی چیزی رو تو گوگل یا بینگ (یا هر موتور جستجوی دیگه) تایپ می کنی و لیست نتایج نمایش داده می شه، اتفاق می افته.
Web Crawler شبیه کسیه که تو یه کتابخونه به هم ریخته می گرده و یه فهرست کارت درست می کنه تا هر کسی که به کتابخونه میاد، بتونه سریع و راحت اطلاعات مورد نیازش رو پیدا کنه. برای اینکه بتونه کتاب ها رو بر اساس موضوع دسته بندی کنه، عنوان، خلاصه و قسمتی از متن داخلی هر کتاب رو می خونه تا بفهمه هر کتاب درباره چیه. ولی بر خلاف یه کتابخونه، اینترنت شامل کتاب های فیزیکی نیست و این کار رو سخت تر می کنه که بفهمیم آیا همه اطلاعات لازم به درستی ایندکس شده یا نه.
برای اینکه بتونه همه اطلاعات مرتبط رو پیدا کنه، Web Crawler با یه مجموعه ای از صفحات وب شناخته شده شروع می کنه و بعد از لینک های موجود تو اون صفحات به صفحات دیگه می ره، از لینک های اون صفحات به صفحات دیگه، و همین طور ادامه می ده.
هیچ کس دقیقاً نمی دونه چه مقدار از اینترنت عمومی توسط ربات های موتور جستجو خزش می شه. بعضی منابع تخمین می زنن که فقط ۴۰ تا ۷۰ درصد اینترنت برای جستجو ایندکس شده، و این یعنی میلیاردها صفحه وب!
اولین Web Crawler در سال 1993 توسط متیو گری، یه دانشجوی دانشگاه MIT، توسعه یافت و به اون "World Wide Web Wanderer" می گفتن. این ابزار برای اندازه گیری اندازه ی وب طراحی شده بود. تو همون سال، یه وب کِراولر دیگه به نام "RBSE Spider" هم توسط دانشمندان دانشگاه استنفورد توسعه یافت که برای اهداف تحقیقاتی استفاده می شد.
در سال 1994، یه وب کِراولر تجاری به نام "WebCrawler" توسط برایان پینکرتون از دانشگاه واشنگتن ساخته شد که اولین موتور جستجوی تمام متن اینترنتی بود. این Web Crawler به کاربران امکان می داد تا در میان محتوای صفحات وب جستجو کنن، نه فقط عناوین اونا.
اینترنت همیشه در حال تغییر و گسترشه. چون تعداد صفحات وب در اینترنت غیرقابل شمارشه، Web Crawlerها کارشون رو از یه نقطه شروع می کنن، یعنی یه لیست از URLهای شناخته شده. اول از این صفحات شروع به خزیدن می کنن. وقتی این صفحات رو بررسی می کنن، لینک های دیگه ای رو پیدا می کنن و اونا رو به لیست صفحاتی که باید بعداً بخزن، اضافه می کنن.
با توجه به تعداد بسیار زیادی از صفحات وب که می تونن ایندکس بشن، این فرآیند تقریباً می تونه بی نهایت بار ادامه پیدا کنه. اما Web Crawlerها یه سری قوانین دارن که بهشون کمک می کنه تا انتخاب کنن کدوم صفحات رو بخزن، به چه ترتیبی این کار رو بکنن و چقدر دوباره به اون صفحات سر بزنن تا ببینن محتوای جدیدی اضافه شده یا نه.
[note]
می دونستی گوگل روزانه حدود 20 میلیارد صفحه وب رو می خزه؟ تصور کن چه حجم عظیمی از اطلاعات رو هر روز پردازش می کنه!
[/note]
بیشتر Web Crawlerها تمام اینترنت رو نمی خزن و اصلاً هدفشون هم این نیست؛ در عوض، اونا تصمیم می گیرن کدوم صفحات رو اول بخزن بر اساس تعداد لینک های دیگه ای که به اون صفحه اشاره می کنن، تعداد بازدیدکننده هایی که اون صفحه داره و عوامل دیگه ای که نشون می ده اون صفحه احتمالاً اطلاعات مهمی داره.
ایده اینه که صفحه ای که توسط صفحات دیگه زیادی بهش اشاره شده و بازدیدکننده های زیادی داره، احتمالاً حاوی اطلاعات با کیفیت و معتبره، بنابراین مهمه که یه موتور جستجو اون رو ایندکس کنه، درست مثل اینکه یه کتابخونه دار مطمئن بشه از کتابی که خیلی ها قرض می گیرن، نسخه های زیادی داشته باشه.
محتوای وب به طور مداوم به روزرسانی، حذف یا به مکان های جدید منتقل می شه. Web Crawlerها باید دوره ای به صفحات سر بزنن تا مطمئن بشن آخرین نسخه از محتوای صفحات رو ایندکس کردن.
Web Crawlerها قبل از خزیدن تو یه صفحه، فایل robots.txt اون سایت رو بررسی می کنن. فایل robots.txt یه فایل متنیه که قوانین دسترسی ربات ها به سایت رو مشخص می کنه. این قوانین تعیین می کنه کدوم صفحات رو ربات ها می تونن بخزن و کدوم لینک ها رو می تونن دنبال کنن. به عنوان مثال، می تونی فایل robots.txt سایت Cloudflare.com رو ببینی.
همه این عوامل توی الگوریتم های اختصاصی موتورهای جستجو وزن متفاوتی دارن. Web Crawlerهای موتورهای جستجوی مختلف ممکنه کمی متفاوت عمل کنن، اما هدف نهایی همشون یکیه: دانلود و ایندکس کردن محتوای صفحات وب.

تصور کن یه عنکبوت کوچیک روی تار عنکبوت خودش داره می خزه. این عنکبوت از یه نقطه شروع می کنه و به دقت روی تارها حرکت می کنه، تا همه قسمت های تارش رو بگرده و هر چیزی که بهش برخورد می کنه رو بررسی کنه. حالا این تصویر رو با کاری که Web Crawlerها انجام می دن مقایسه کن.
Web Crawlerها، یا همون "عنکبوت های وب"، درست مثل این عنکبوت ها، از یه نقطه روی شبکه ی عظیم وب شروع به خزیدن می کنن. این نقطه می تونه یه لیست از سایت های شناخته شده باشه. اونا به این سایت ها سر می زنن و اطلاعات رو جمع می کنن. بعدش، مثل همون عنکبوت که از یه تار به تار دیگه می ره، Web Crawlerها هم لینک های موجود توی این صفحات رو دنبال می کنن و به صفحات دیگه می رن.
این روند ادامه پیدا می کنه، تا جایی که این عنکبوت های دیجیتالی تونسته باشن بخش زیادی از وب رو بگردن و اطلاعات رو جمع آوری کنن. به خاطر این روش کار و اینکه این ربات ها مثل عنکبوت های واقعی روی یه شبکه بزرگ حرکت می کنن، بهشون می گن "عنکبوت".
این تشبیه به عنکبوت خیلی جالبه چون هر دوی اونا یه شبکه رو می گردن و بررسی می کنن. همونطور که یه عنکبوت توی تار خودش همه جا رو می گرده تا شکارها یا هر چیز دیگه ای رو پیدا کنه، Web Crawlerها هم توی تار اینترنت می خزن تا اطلاعات مفید رو پیدا کنن و برای ما کاربران آماده کنن.
Web Crawlerها کاربردهای متنوعی دارن که در ادامه به برخی از مهم ترین اونا اشاره می کنیم:
[note]
هر ثانیه که می گذره، گوگل بیش از 40 هزار جستجو رو پردازش می کنه. فکر می کنی چطور این کار رو انجام می ده؟ با کمک Web Crawlerها!
[/note]
چهار نوع اصلی Web Crawler وجود داره:
علاوه بر این ها، چند نوع دیگه از Web Crawlerها هم وجود دارن که هر کدوم برای نیازهای خاصی طراحی شدن:
اکثر موتورهای جستجو از Web Crawlerهای خودشون استفاده می کنن که بر اساس الگوریتم های خاصی کار می کنن. شرکت ها هم ممکنه نرم افزار Web Crawler خودشون رو روی سرورهای محلی یا در فضای ابری راه اندازی کنن. بعضی از معروف ترین Web Crawlerها شامل این ها می شن:
این خزنده های وب کمک می کنن که موتورهای جستجو و سرویس های مختلف اطلاعات دقیق و به روزی رو برای کاربران فراهم کنن.

Web Crawling و Web Scraping دو تا مفهوم مختلف هستن که شاید به نظر شبیه بیان، ولی تفاوت های مهمی دارن.
Web Scraping یا همون استخراج داده ها، وقتی رخ می ده که یه ربات محتوای یه سایت رو بدون اجازه دانلود می کنه و اغلب قصد داره از اون محتوا برای اهداف غیرقانونی یا بد استفاده کنه.
تفاوت های کلیدی بین این دو عبارت اند از:
در کل، Web Scraping بیشتر برای اهداف خاص و اغلب نادرست استفاده می شه، در حالی که Web Crawling به دنبال جمع آوری اطلاعات به صورت گسترده و مرتب برای بهبود نتایج جستجو و خدمات اینترنتی هست.
بات های بد می تونن آسیب های زیادی بزنن، از جمله ایجاد تجربه کاربری ضعیف، کرش کردن سرورها و سرقت داده ها. اما در مقابله با بات های بد، باید دقت کنیم که بات های خوب مثل Web Crawlerها بتونن به وب سایت ها دسترسی داشته باشن. مدیریت بات های Cloudflare این امکان رو می ده که بات های خوب به وب سایت ها دسترسی داشته باشن، در حالی که ترافیک بات های مخرب رو کاهش می ده. این محصول یه لیست سفید خودکار از بات های خوب مثل Web Crawlerها رو حفظ می کنه تا مطمئن بشه اونا بلاک نمی شن. سازمان های کوچیک تر هم می تونن با استفاده از Super Bot Fight Mode که در پلان های Pro و Business کلودفلر موجوده، به همین سطح از کنترل و شفافیت بر ترافیک بات ها دست پیدا کنن.
وقتی حرف از بهبود رتبه بندی سایت ها تو موتورهای جستجو می شه، یکی از مهم ترین ابزارهایی که باید در نظر بگیریم Web Crawlerها هستن. این عنکبوت های دیجیتالی نقش بسیار مهمی در سئو (SEO) دارن. بیاید ببینیم چطور Web Crawlerها می تونن روی سئو تأثیر بذارن و چرا باید بهشون اهمیت بدیم.
بذار برات نحوه کار خزنده های وب رو یادآوری کنم، Web Crawlerها (یا همون خزنده های وب) برنامه هایی هستن که توسط موتورهای جستجو مثل گوگل، بینگ و یاهو استفاده می شن. این برنامه ها به صورت خودکار صفحات وب رو بررسی می کنن، لینک ها رو دنبال می کنن و محتوای صفحات رو برای ایندکس کردن جمع آوری می کنن. به عبارتی، این ربات ها اینترنت رو می گردن و اطلاعات رو جمع می کنن تا وقتی کسی تو موتور جستجو چیزی رو سرچ می کنه، بتونه به نتایج مرتبط دسترسی پیدا کنه.
Web Crawlerها نقش بسیار مهمی در سئو دارن و بهینه سازی سایتت برای این ربات ها می تونه به بهبود رتبه بندی در نتایج جستجو کمک کنه. با استفاده از فایل robots.txt، نقشه سایت، لینک های داخلی مناسب و تولید محتوای با کیفیت، می تونی مطمئن بشی که Web Crawlerها به بهترین شکل ممکن سایتت رو می خزن و ایندکس می کنن. اینجوری، وقتی کسی چیزی رو تو موتورهای جستجو سرچ می کنه، احتمال بیشتری داره که سایت تو جزو نتایج برتر نمایش داده بشه.
برای اینکه Web Crawlerها بتونن به بهترین شکل ممکن سایتت رو بخزن و ایندکس کنن، باید چند نکته رو در نظر بگیری:

Web Crawlerها به صورت مرتب به وب سایت ها سر می زنن. تعداد دفعات بازدیدشون بستگی به عواملی مثل میزان به روزرسانی سایت و اهمیتش داره.
بله، می تونی از فایل robots.txt استفاده کنی تا به Web Crawlerها بگی کدوم قسمت های سایتت رو بخزن و کدوم ها رو نادیده بگیرن. همچنین می تونی تو بعضی از راه حل های پیشرفته تر مدیریت بات تنظیم کنی که با Web Crawlerهای مختلف به شکل های متفاوتی برخورد بشه. مثلاً، ممکنه بخوای به بعضی از Web Crawlerهای کمتر شناخته شده اجازه بدی فقط در ساعات شبانه به سایتت دسترسی داشته باشن.
بعضی از Web Crawlerهای مدرن می تونن جاوااسکریپت رو پردازش کنن و لینک های داخلش رو دنبال کنن، اما همه ی اونا این قابلیت رو ندارن.
می تونی از ابزارهای مخصوص موتورهای جستجو مثل Google Search Console استفاده کنی تا ببینی سایتت ایندکس شده یا نه.
Web Crawlerها می تونن متادیتای تصاویر و ویدیوها رو بخونن ولی ممکنه نتونن محتوای اون ها رو به خوبی متن تفسیر کنن.
در اکثر موارد، Web Crawlerها نمی تونن به محتوایی که پشت دیوارهای ورود یا مناطق محافظت شده با رمز عبور هست، دسترسی پیدا کنن.
همون طور که متوجه شدید، Web Crawlerها یا همون عنکبوت های وب، نقش بسیار مهمی در دنیای اینترنت دارن. این ابزارهای هوشمند به موتورهای جستجو کمک می کنن تا اطلاعات موجود در صفحات وب رو جمع آوری و ایندکس کنن و به این ترتیب، جستجوهای ما رو سریع تر و دقیق تر انجام بدن. اونا مثل کتابدارهای خودکاری هستن که تو یه کتابخونه ی بی پایان از صفحات وب می گردن و اطلاعات مورد نیاز رو پیدا و مرتب می کنن.
اما، برای مدیریت درست ترافیک بات ها، باید تفاوت بین بات های خوب و بد رو بشناسیم. بات های مخرب می تونن به سایت ها آسیب برسونن، سرورها رو دچار مشکل کنن و حتی داده های حساس رو سرقت کنن. بنابراین، استفاده از راه حل های مدیریت بات که به درستی بین بات های خوب مثل Web Crawlerها و بات های بد تمایز قائل بشن، ضروریه.
با تنظیم فایل robots.txt و استفاده از ابزارهای پیشرفته ی مدیریت بات، می تونیم دسترسی Web Crawlerها به سایت خودمون رو کنترل کنیم و مطمئن بشیم که فقط بات های مجاز و مفید به سایت ما دسترسی دارن. این کار به بهبود رتبه بندی سایت در موتورهای جستجو کمک می کنه و در عین حال، امنیت و عملکرد سایت رو حفظ می کنه.
به طور کلی، Web Crawlerها ابزارهایی هستن که به ما کمک می کنن دنیای وسیع و پیچیده ی اینترنت رو بهتر بشناسیم و از اون بهره برداری کنیم. با مدیریت درست و استفاده ی هوشمندانه از این ابزارها، می تونیم تجربه ی بهتری از وب گردی و جستجوهای آنلاین داشته باشیم.
اصفهان، خیابان حمزه اصفهانی، بن بست تخت جمشید(18) ، پلاک ۴
دفتر تهران: تهران، خیابان سهروردی شمالی، خیابان هویزه شرقی، پلاک 20، طبقه دوم، واحد 6