آموزش جامع Selenium در پایتون

فهرست مطالب
معرفی کتابخانه Selenium
برای معرفی کتابخانه selenium در پایتون، اینطور تصور کنید که یک برنامه نویس، با تغییر هر کد، باید تمام قسمتهای سایت را کنترل کند. در واقع بعد از هر تغییر در کدها باید بخشهای مختلف سایت یا نرم افزار از لحاظ عملکرد، چک شود. ولی با طراحی کتابخانه selenium، این مشکل به صورت کامل رفع شده است. یعنی با استفاده از این نرم افزار فوقالعاده که یکی از کتابخانههای پایتون است، میتوانید سایت یا نرم افزار مورد نظر خود را بعد از تغییراتی که در آن ایجاد میکنید، به صورت خودکار، تست کنید.
به صورت کلی، کتابخانه selenium در پایتون، یکی از ابزارهای متن باز است که کار آن اتوماسیون مرورگرها یا وب اسکریپینگ میباشد. به کمک این ابزار، میتوان کارهایی که انسان با سیستم انجام میدهد مثل کلیک و تایپ کردن را شبیه سازی کرد. این کتابخانه شامل مجموعهای از ابزارهای مختلف است که هر کدام از آنها، عملکرد مخصوص به خود را دارند. ساختار ساده این ابزار باعث شده تا علاوه بر افراد متخصص، کسانی که اطلاعات چندانی درباره این ابزار ندارند نیز بتوانند از آن استفاده کنند.
به نقل از سایت geeksforgeeks:
«کتابخانه سلنیوم ابزاری قدرتمند برای کنترل مرورگرهای وب از طریق برنامهها و انجام خودکارسازی مرورگر است. این ابزار برای همه مرورگرها استفاده میشود. روی همه سیستم عاملهای اصلی کار میکند و اسکریپتهای آن به زبانهای مختلفی مانند پایتون، جاوا، سیشارپ و غیره نوشته شدهاند.»
کاربردهای Selenium
کتابخانه selenium در پایتون، به عنوان یکی از ابزارهای محبوب، دارای کاربردهای بسیار زیادی در بخش اتوماسیون و خودکار است. هر کدام از این کاربردها در حوزهها و بخشهای مختلف استفاده میشوند. در ادامه به بررسی برخی از مهمترین آنها میپردازیم.
- تست خودکار در وبسایتها: توسعه دهندگان با کمک کتابخانه selenium، میتوانند نحوه عملکرد سایتهای مختلف را به راحتی و با روشهای گوناگون، تست کنند. این ابزار، قابلیت شبیه سازی رفتارهایی مثل کلیک کردن، تایپ کردن، پر کردن فرمها و جستجو در صفحات مختلف را دارد.
- خودکار سازی وظایف تکراری در مرورگرها: انجام بسیاری از کارها در وبسایتها تکراری هستند و میتوان اجرای آنها را توسط این کتابخانه، شبیه سازی کرد. دانلود و آپلود فایلها یا ارسال پیام در شبکههای اجتماعی و سایتها، جزء کاربردهای selenium به شمار میآیند. اتوماسیون فعالیتهای تکراری در سایتها و اپلیکیشنها، به صرفه جویی در وقت و هزینه کارشناسان و متخصصان خواهد انجامید. در چنین شرایطی، آنها میتوانند از وقت و انرژی خود برای انجام سایر فعالیتها، استفاده کنند.
- اجرای تست سازگاری با مرورگرهای مختلف: یکی از ویژگیهای کتابخانه selenium در پایتون، متن باز بودن آن است. به همین دلیل نیز قابلیت پشتیبانی از مرورگرهای مختلف را دارد. این ویژگی به توسعه کنندگان این امکان را میدهد تا تست سایت خود را در فضاهای گوناگون انجام دهند.
- قابلیت استخراج داده از وب سایتها: با استفاده از این ابزار، میتوان اطلاعات و دادههای ساختار یافته را از صفحات مختلف استخراج کرد. این کاربرد، مورد استفاده بسیاری از کسب و کارها برای دسترسی به اطلاعات ارزشمند قرار میگیرد. در ادامه نیز امکان ذخیره آن با فرمتهای متنوع، وجود دارد.

نصب و راهاندازی Selenium در پایتون
برای استفاده از کتابخانه selenium در پایتون، ابتدا باید اقدام به نصب و راه اندازی آن کرد. پیش زمینه استفاده از این ابزار، نصب برنامه پایتون است. حال که برنامه پایتون را روی سیستم دارید، باید اقدام به نصب کتابخانه selenium کنید.
نصب با pip
اولین مرحله برای نصب کتابخانه selenium در پایتون، استفاده از ابزار pip است. این ابزار معمولاً همراه پایتون، نصب میشود. حال که پایتون و pip را روی سیستم خود دارید، میتوانید برای نصب و راه اندازی selenium اقدام کنید. برای اجرای این کار، فقط کافی است کد pip install selenium را در خط فرمان پایتون وارد کنید تا این کتابخانه نصب شود.
انتخاب و نصب WebDriver مناسب (Chrome, Firefox و غیره)
وظیفه و کاربرد اصلی selenium در پایتون، همانطور که قبلاً نیز به آن اشاره کردیم، اتوماسیون سایت و مرورگرهای مختلف است. برای اجرایی کردن این کار باید بتوان WebDriver متناسب با آن را نصب کرد. بهعنوان مثال، برای کروم از ChromeDriver و برای Firefox از GeckoDriver استفاده میشود. به همین دلیل نیز باید WebDriver مورد نظر را از وبسایت اصلی پیدا کرده و به PATH سیستم خود اضافه کنید. با شرکت در دوره جامع نخبگان پایتون، تمام جزئیات مربوط به نصب کتابخانههای این نرم افزار را آموزش خواهید دید. مجموعه دیتایاد، برگزار کننده این دوره آموزشی جامع است.

مثالهای کاربردی از استفاده Selenium در پایتون
با دیدن برخی دورههای آموزش رایگان سلنیوم در پایتون Selenium Python، میتوانید به صورت سطحی با برخی از کاربردهای این ابزار، آشنا شوید. این ابزار برای خودکارسازی یا اتوماسیون برخی از فعالیتهای تکراری در فضای سایت و نرم افزارها به کار میرود. در ادامه به بررسی بیشتر این موارد با مثالهای کاربردی میپردازیم.
باز کردن یک صفحه وب
برای بازکردن کتابخانه selenium در پایتون، باید از قبل، WebDriver مخصوص مرورگر خود را نصب کرده باشید. حال آدرس صفحه مورد نظر را به صورت کامل در آن وارد کرده و دکمه سرچ را میزنید. هر کدام از مرورگرها دارای یک WebDriver مخصوص هستند و نمیتوان از یک نمونه برای همه آنها استفاده کرد.
وارد کردن اطلاعات در فرمها
یکی دیگر از کاربردهای selenium در پایتون، وارد کردن اطلاعات و دادهها در فرمها است. برای انجام این کار، میتوان از متدهای مختلف استفاده کرد. در ادامه به متدهای کاربردی در کد نویسی برای وارد کردن اطلاعات و انتخاب گزینهها، اشاره میکنیم.
- send_keys(): برای وارد کردن متن در فیلدهای مختلف متنی
- click(): متد مناسب برای کلیک کردن روی باکسها و دکمهها
- select_by_visible_text(): برای انتخاب گزینه مناسب از لیستهای کشویی
- select_by_value(): برای انتخاب از لیست کشویی بر اساس مقدار
- select_by_index(): برای انتخاب گزینه مناسب از لیست کشویی بر اساس ایندکس یا شماره ترتیب
هنگام استفاده از هر کدام از متدها برای وارد کردن اطلاعات با selenium در پایتون، باید به برخی از نکات توجه داشت. برای مثال باید مطمئن بود که آدرس صفحه یا فرم مورد نظر با آدرس قرار گرفته شده در متد، مطابقت داشته باشد. ابزارهای توسعه مرورگر نیز برای پیدا کردن عناصر و اطلاعات هر کدام از فرمها، پیشنهاد میشوند.
استخراج داده از صفحات پویا
استخراج داده، یکی از حوزههای پرکاربرد فناوری است که امروزه با ابزارهای مختلفی قابل اجراست. کتابخانه selenium در پایتون، یکی از ابزارهای کاربردی برای استخراج دادهها از منابع مختلف است که مورد استفاده متخصصان قرار میگیرد. اگرچه تعداد کتابخانههای پایتون برای استخراج اطلاعات بسیار زیادند ولی selenium یکی از کاربردیترین نمونهها برای استخراج انواع اطلاعات از صفحات پویا است. در کنار این ابزار، میتوان از دیگر کتابخانههای پایتون مثل کتابخانه TensorFlow برای انجام محاسبات و استخراج دادههای عددی نیز استفاده کرد.

گرفتن اسکرینشات از صفحات
یکی دیگر از کاربردهای کتابخانه selenium در پایتون، گرفتن اسکرین شات از صفحات است که مورد استفاده بسیاری از متخصصان قرار میگیرد. برای انجام این کار نیز متدهای گوناگون کد نویسی وجود دارند که یکی از آنها، save_screenshot() است. با فراخوانی این متد روی درایور مرورگر مورد نظر، امکان ذخیره صفحه یا عکس، فراهم میشود. البته قبل از استفاده از متد عنوان شده، باید از متد get()، برای رفتن به آدرس اینترنتی مورد نظر استفاده کرد.
میخواهید با پایتون وارد دنیای تکنولوژی شوید؟ در دورههای پروژه محور دیتایاد و تحلیل داده با پایتون، کاربردهای واقعی پایتون در تکنولوژی را یاد بگیرید و مسیر شغلی خود را بسازید. 09905501998
سوالات متداول
1-تفاوت Selenium با BeautifulSoup و Scrapy چیست؟
کتابخانه selenium در پایتون، فقط یکی از صد کتابخانه موجود در این نرم افزار کاربردی است. در پایتون از کتابخانههای مختلفی به غیر از selenium استفاده شده که دو نمونه BeautifulSoup و Scrapy را میتوان جزء کاربردیترینها، به شمار آورد. کتابخانه selenium برای اتوماسیون تست سایتها، نرم افزارها و شبیهسازی رفتارهای انسان استفاده میشود. Scrapy جهت استخراج حرفهای اطلاعات از سایتها و منابع مختلف مناسب است.BeautifulSoup نیز جهت استخراج دادهها به کار میرود ولی کار با این کتابخانه، ساده و راحتتر از Scrapy میباشد.
2-چگونه از Captcha در پروژههای Selenium عبور کنیم؟
Captcha همان تست امنیتی مرورگر کروم است که انسان را از ربات، تشخیص میدهد. در پروژههای Selenium میتوان از این تست به صورت خودکار، عبور کرد. بعد از وارد کردن آدرس یک سایت یا صفحه مورد نظر، ممکن است به صفحه Captcha منتقل شوید. در چنین شرایطی، کد امنیتی به سرویس Capsolver.com ارسال شده و Token دریافت میشود. با وارد شدن خودکار کد امنیتی ارسال شده، میتوان به راحتی از Captcha عبور کرد.
3-مهمترین کاربردهای selenium در پایتون، کداماند؟
Selenium یکی از چند صد کتابخانه موجود در نرم افزار پایتون است. اصلیترین کار آن، اتوماسیون و خودکارسازی فعالیتهای تکراری در فضای وب است. به صورت جزئی اگر بخواهیم به کاربردهای این کتابخانه اشاره کنیم، میتوان به باز کردن صفحات وب، وارد کردن اطلاعات در فرمها، استخراج دادهها از صفحات پویا، گرفتن اسکرین شات و موارد مشابه اشاره کرد.
4-برای کار با کتابخانه selenium در پایتون، نیاز به آموزش است؟
برای کار با Selenium به عنوان یکی از کتابخانههای کاربردی پایتون، باید با فضای این ابزار و مشخصات کلی آن آشنا باشید. اگرچه پایتون در مقایسه با سایر زبانهای برنامه نویسی ساختار سادهای دارد، ولی برای آشنایی با تمام کاربردهای آن، باید تخصص و مهارت کار با آن را داشته باشید. تنها راه کسب این مهارت نیز شرکت در یک دوره آموزشی معتبر است.









