Web Automation یعنی چی؟
به شاخه گسترده فعالیت به صورت bot با وب سایتها و وب اپلیکیشنهای مختلف، Web Automation گفته میشود. در واقع در این روش یک user ساخته میشود که مانند یک انسان میتواند رفتارهایی را با این وب سایتها و وب اپلیکیشنها داشته باشد. به این صورت که میتواند:
۱. اطلاعات را مثل یک کاربر واقعی دریافت و ذخیرهسازی و سپس در موارد مختلف استفاده کند.
۲. مثل یک کاربر واقعی اکشنهای مختلف داشته باشد. مثل ایجاد یک bot در اینستاگرام که بتواند اکشنهایی مانند follow ،like و یا comment داشته باشد.
Web Scraping یعنی چی؟
یک شاخه خاص در Web Automation وجود دارد که به آن Web Scraping میگویند. در واقع در این حالت یک bot با یک هدف خاص برای کسب اطلاعات مدنظر برای استخراج اطلاعات از وب سایت یا وب اپلیکیشن مختلف ساخته میشود. که در شاخه data mining بسیار پرکاربرد میباشد. و پکیجها و کتابخانههای متعددی برای این کار ایجاد شده است که در ادامه به آن میپردازیم.
بهترین ابزار Web Automation چیست؟
یکی از frame work های پرکاربرد در این حوزه Selenium میباشد. این frame work در سال 2004 به عنوان یک پروژه تست کردن وب سایتهای مختلف ایجاد شد و کم کم از آن در موارد Web Scraping و Web Automation استفاده شد. Selenium یکی از قدرتمندترین frame workها در این حوزه میباشد. که همه میتوانند از آن استفاده کنند. دلیل استفاده از آن توسط اکثریت افراد این است که یک frame work قدرتمند میباشد که خیلی از برنامهنویسها با زبانهای مختلف مانند زبانهای برنامه نویسی پایتون، سی شارپ، جاوا، جاوا اسکریپت، پرل و پی اچ پی میتوانند با Selenium کار کنند.
Selenium در مباحث data mining بسیار پرکاربرد میباشد. زیرا میتواند به صورت خاص دنبال دیتای مشخصی بگردد. در htmlها و cssها و حتی در کدهای java script به راحتی میتوانیم کل front end هر وب سایتی را با این frame work بررسی کنیم و دیتا استخراج کنیم. همچنین میتوانیم اکشنهایی را به عنوان یک bot در آن وب سایت داشته باشیم.
تفاوت Web Scraping و Web Crawling چیست؟
در Web Scraping به دنبال یک سری دیتای خاص در یک سری وب سایت خاص هستیم و معمولا برای جمع آوری اطلاعات و data mining از آن استفاده میشود. در Web Crawling معمولا search engineهای بزرگ مثل Google ،Yahoo و یا Bing از Web Crawlerها برای استخراج و ذخیرهسازی تمام دیتاهای یک سایت، استفاده میکنند. در واقع از این روش در Web Indexing استفاده میکنند. یعنی وب سایتهای مختلف را بر اساس موضوعات مختلف دستهبندی میکنند تا در هنگام سرچ وبسایتها به ترتیب دیده شوند. در واقع Web Crawling در مواردی که Web Indexing صورت میگیرد، استفاده میشود. یعنی کل دیتای یک وب سایت استخراج و دستهبندی میشود ولی ازر Web Scraping به منظور استخراج یک دیتای خاص استفاده میشود.