جستجو برای:
  • صفحه اصلی
  • وبلاگ
    • همه‌ی مقاله ها
    • مهارت های برنامه‌نویسی
    • نکات ضروری پایتون
    • پاسخ به سوالات عمومی
    • مینی پروژه پایتون
    • دوره ها
  • فروشگاه
  • درباره مدرس
  • تماس با ما
  • سبد خرید
  • دوره های من
  • درباره مدرس
  • تماس با ما
پای کلس
  • صفحه اصلی
  • وبلاگ
    • همه‌ی مقاله ها
    • مهارت های برنامه‌نویسی
    • نکات ضروری پایتون
    • پاسخ به سوالات عمومی
    • مینی پروژه پایتون
    • دوره ها
  • فروشگاه
  • درباره مدرس
  • تماس با ما
  • سبد خرید
  • دوره های من
0

ورود و ثبت نام

وبلاگ

وب‌اسکرپینگ و وب‌کراولر چیست؟ + انواع آنها و معرفی ابزار ها

اکتبر 16, 2020
ارسال شده توسط علی لب ریشان
مهارت های برنامه‌نویسی
3.87k بازدید
()

 

امروزه اطلاعات در دنیای وب به شکل قابل توجهی افزایش پیدا کرده است؛

 

بیشتر اطلاعات برخلاف گذشته، در وب‌سایت ها منتشر می‌شوند.

 

در این مقاله راجع‌به وب‌اسکرپینگ و جمع آوری اطلاعات از وب‌سایت ها صحبت می‌کنیم، همراه ما باشید.

 

طی تحقیقی در سال 2016 حجم اطلاعات بر روی وب سایت ها از 1 زتابایت (هر زتابایت برابر است با ۱۵۲ میلیون ساعت ویدئو با کیفیت 8K UHD) گذشته است.

 

دانشمندان، متخصصین داده و هوش مصنوعی به این اطلاعات خیلی نیاز دارند؛

 

اما مثل گذشته نیازی به نوت برداری دستی یا کپی کردن از صفحات وب یا خیلی از این قبیل کار های خسته کننده نیست.

 

امروزه برنامه‌نویسی ابزار های فوق‌العاده‌ای را در اختیار ما قرار داده است.

 

وب‌اسکرپینگ(web scraping) چیست؟

 

وب‌اسکرپینگ(web scraping) چیست؟

 

برنامه‌نویسان برای این که این اطلاعات را برای متخصصین مربوطه جمع‌آوری کنند و از این اطلاعات استفاده شود، کُدی را می‌نویسند که آن اطلاعات مورد نظر را به صورت خود کار از وب‌سایت ها جمع‌آوری کرده و در جایی ذخیره کند.

 

به این کار وب‌اسکرپینگ ‌گویند، به طور خلاصه (استخراج اطلاعات از وب‌سایت‌ها) می‌گویند.

 

قطعا شما برای بدست آوردن اطلاعات از وب به دانش برنامه‌نویسی یا استفاده از نرم افزار ها نیاز دارید، یا برای استخدام  یک برنامه‌نویس
باید هزینه صرف کنید.

 

به طور کلی نرم افزار های موجود وب‌اسکرپینگ از نظر کارایی محدود هستند و اگر به دنبال جمع‌آوری اطلاعات از وب باشید متوجه آن خواهید شد.

 

 نرم افزار های وب‌اسکرپینگ شاید برای استخراج چند مورد از یک  صفحه وب مناسب باشند اما وقتی شما نیاز دارید از چند  وب‌سایت مختلف اطلاعات جمع‌آوری کنید، کارایی این نرم‌افزار ها کاهش می‌یابد.

 

بنابراین شما برای یادگیری و پیاده‌سازی تکنیک های وب اسکریپینگ باید به زبان های برنامه‌نویسی پایتون، پی‌اچ‌پی و جاواسکریپت سرمایه گذاری کنید.

 

انواع تکنیک های وب‌اسکرپینگ

فرآیند استخراج و یا جمع‌آوری اطلاعات از صفحات وب روش ها و تکنیک های متفاوتی دارد. حتی ابزارهایی هم برای آن ساخته شده است که از این ابزارها میتوان به افزونه web scraper اشاره کرد.

اما انواع تکنیک ها را میتوان در لیست زیر مشاهده کرد:

  • HTTP Programming
  • Computer vision web-page analysis
  • Text pattern matching
  • Semantic annotation recognizing
  • HTML parsing
  • DOM parsing

انواع ابزار های وب‌اسکریپینگ

  • Wget
  • Apify
  • Scrapy
  • cURL
  • HtmlUnit
  • HTTrack

وب کراولر (crawl) چیست؟

وب کراولر (crawl) چیست؟

گاهی اوقات لازم است که برنامه‌ ما در جاهای مختلف یک وب‌سایت حرکت کند، ( اصطلاحاً خَزش کند) که به این کار وب‌کراولر می‌گویند.

برای مثال فهرست کتاب درسی خود را بازکنید در این فهرست، نمایش داده ها بر اساس حروف الفبا و صفحات درج شده کتاب را می‌بینید.

تفاوت آن موتور جستجو با کتاب این است که بجای شماره گذاری صفحه، یک موتور جستجو پیوندهایی را به شما نشان می دهد؛

و شما می‌توانید اطلاعات مورد نظر را انتخاب کنید.

تفاوت مهم شاخص های جستجو و کتاب این است که اولی پویاست و میتوان آن را به شکل دلخواه تغییر داد.

انواع اصلی خزنده وب

خزنده های وب فقط محدود به موتور های جستجو نیستند و انواع مختلفی دارند.

 خزیدن ایمیل

این نوع خزش برای کسب‌کار ها می‌تواند بسیار مفید باشد، مثلا براساس نوع زمینه کاری، مخاطبین مناسب را جذب کرد.

البته این کار بدون اجازه صاحب ایمیل ها غیرقانونی است.

خزیدن اخبار

با ظهور اینترنت، اخبار سراسر دنیا می‌توانند به سرعت در سراسر وب پخش شود و استخراج داده ها از وب سایت های مختلف کاملا غیر قابل کنترل است.

خزنده های زیادی وجود دارند که بتوانند این نوع خزش را انجام دهند، چنین خزنده هایی قادر به بازیابی اطلاعات از، اطلاعات قدیمی، جدید و مطالب خبری آرشیو شده است.

خزیدن تصویر

همانطور که از نام آن پیداست، این نوع خزیدن بر روی تصاویر انجام می‌شود؛

اینترنت پر تصاویر مختلف است، بنابراین چنین ربات هایی به افراد کمک می‌کند تا تصاویر مرتبط را در انبوهی از تصاویر در سراسر وب پیدا کنند.

خزیدن در شبکه های اجتماعی

خزیدن در شبکه های اجتماعی جالب است زیرا همه شبکه های اجتماعی اجازه خزش را نمی‌دهند.

همچنین باید به خاطر داشته باشید که چنین خزشی اگر نقض رعایت حریم خصوصی داده ها باشد ، غیرقانونی است.

اما هستند شبکه های اجتماعی که اجازه خزش بدهند.

برای مثال توییتر اجازه می‌دهد صفحاتی را که برای کاربر حساس نیستند و اطلاعات شخصی را فاش نمی‌کنند، اسکن کنند. فیس بوک و لینکدین در این مورد سخت گیری می کنند.

خزیدن ویدئو

بعضی اوقات تماشای فیلم بسیار راحت تر از خواندن مطالب زیاد است.

اگر تصمیم دارید Youtube ،Vimeo یا هر محتوای ویدیویی دیگری را در وب سایت خود قرار دهید ، می‌تواند توسط برخی از خزنده های وب فهرست شود.

نگه‌داری از خزنده ها

وب سایت ها مرتباٌ ساختار html خود را تغییر می‌دهند، که باعث ایجاد خرابی خزنده ما می‌شوند، این یکی از مشکلات وباسکریپینگ است که باید توجه خاصی به آن داشت.

فرقی ندارد که شما کدنویسی کرده باشید یا از نرم‌افزار استفاده کرده باشید خزنده شما نیاز به نگه‌داری دارد، تا اطلاعات شما منظم، دقیق و اصولی باشد.

قوانین ومقررات

نکته مهمی که باید حتما رعایت شود این است که زمانی که می‌خواهید وب‌کراولینگ و وب‌اسکرپینگ انجام دهید، حتما از قوانین مطلع باشید که زیر پا نگذارید؛

چون وقتی ما اطلاعات را از وب‌سایت‌ها بر می‌داریم و ذخیره می‌کنیم لازم است که ما کپی‌رایت و حقوق آن سایت را رعایت کنیم.

بعضی از وب‌سایت‌ها از نظر قانونی رضایت ندارند که از اطلاعات آنان استفاده تجاری کنیم.

یکی از راه های راحتی که می‌شود این موضوع را تشخیص داد که از کدام اطلاعات وب‌سایت‌ها می‌شود استفاده کرد، این است که در نوار آدرس مرورگر به فرمت زیر عمل کنیم.

قوانین و مقررات وب‌کراولینگ و وب‌اسکرپینگ

این کار یکسری قوانین را به شما نشان خواهد داد که طبق آن می‌توانید وب‌سایت را کراول کنید.

درواقع در این صفحه وب به شما می‌گوید که کدام صفحه را حق اسکرپ کردن دارید و کدام را ندارید.

یکی دیگر از مواردی که این صفحه به شما می‌گوید این است که کدام صفحات را چند بار حق خواندن توسط کُدتان را دارید.

آن هم به این دلیل است که اگر بیش از اندازه این درخواست ها به سرور و لود شدن صفحات صورت بگیرد، بار زیادی را بر روی سرور آن سایت خواهد داشت.

و البته قوانین کپی‌رایت آن سایت را هم مطالعه کنید که به مسائل قانونی دچار نشوید.

پایتون و علوم داده

پایتون یکی از مهم ترین ابزار ها در علوم داده است، و همان‌طور که انتظار می‌رود کتابخانه های زیادی هم برای این موضوع وجود دارد.

ما در دوره پایتون مهارت‌محور این کتابخانه ها را پوشش داده‌ایم.

در کامنت ها راجع‌به قوانین کپی‌رایت و صفحات قابل استفاده وب‌سایت‌ها کامنت کنید، تا باهم بیشتر در تعامل باشیم.

این پست مفید بود ؟

به این پست امتیاز بدین !

امتیاز تا کنون: / 5. تعداد امتیاز ها:

هنوز کسی امتیاز نداده! شما اولین نفر باشین!

از این که نتونستیم نظرتون رو جلب کنیم متاسفیم.

بهمون کمک کنین !

چه طوری کیفیت کارمون رو بهتر کنیم ؟

اشتراک گذاری:
مطالب زیر را حتما بخوانید
  • انواع زبان های برنامه‌نویسی چه کاربردی دارند؟
    انواع زبان های برنامه‌نویسی چه کاربردی دارند؟

    3.2k بازدید

  • IDLE چیست؟ محیط برنامه‌نویسی پایتون
    برای برنامه نویسی پایتون کجا باید کد بزنیم؟ | محیط های کد زنی پایتون

    12.84k بازدید

  • نصب پایتون در ویندوز 10
    آموزش نصب پایتون در ویندوز 10 + رفع مشکلات

    17.38k بازدید

  • گیت(git) چیست؟ ابزار مهم کار تیمی
    گیت(git) چیست؟ و چه کاربردی دارد؟

    4.72k بازدید

  • فریم ورک چیست؟
    فریم ورک چیست و چه کاربردی دارد؟

    4.21k بازدید

  • API چیست؟
    API(ای پی آی) چیست و چه کاربردی دارد؟ | همه ‌چیز راجع‌به API ها

    5.87k بازدید

قدیمی تر چگونه در برنامه‌نویسی به‌روز بمانیم؟ | 8 نکته ضروری | چگونه برنامه‌نویس شویم ؟
جدیدتر فریم ورک چیست و چه کاربردی دارد؟

دیدگاهتان را بنویسید لغو پاسخ

جستجو برای:
دسته‌ها
  • پاسخ به سوالات عمومی
  • دوره ها
  • معرفی ابزار و افزونه های برنامه نویسی
  • مهارت های برنامه‌نویسی
  • مینی پروژه پایتون
  • نکات ضروری پایتون
نوشته‌های تازه
  • تحلیل نامزد ها در مناظره های انتخاباتی با دیتا ویژوالیزیشن (مصورسازی داده)
بقیه پست های ما
  • دیتا ویژوالیزیشنتحلیل نامزد ها در مناظره های انتخاباتی با دیتا ویژوا…
  • کاربرد های پایتونکاربرد های پایتون چیست ؟ | با پایتون چه برنامه هایی …
  • معرفی بهترین کانال های یوتیوب آموزش پایتونمعرفی بهترین کانال های یوتیوب آموزش پایتون
  • مسیر یادگیری پایتوننقشه راه یادگیری پایتون چگونه است؟
  • کتاب یا ویدئو آموزشی؟فیلم یا کتاب برنامه نویسی ؟ | آموزش برنامه‌نویسی
دسته بندی مطالب
دوره ها (3) معرفی ابزار و افزونه های برنامه نویسی (9) مهارت های برنامه‌نویسی (10) مینی پروژه پایتون (2) نکات ضروری پایتون (4) پاسخ به سوالات عمومی (12)
تماس با ما

برای تماس با ما سریع ترین راه تلگرامه:

t.me/pyclass_support

تمامی ایده و مطالب متعلق به مجموعه باحال «پای کلس» می باشد!

ورود

رمز عبور را فراموش کرده اید؟

هنوز عضو نشده اید؟ عضویت در سایت