در این نوشته تجربیات خودم از کار با ابزارهای اتوماسیون مرورگر را به اشتراک می گذارم. این محتوا صرفاً جنبه آموزشی دارد و براساس نیازهای شخصی ام در پروژه دانشگاهی توسعه داده شده است.
در حین انجام پروژه پایان ترمم در حوزه داده کاوی، نیاز به جمع آوری اطلاعات از چند سایت داشتم. بعد از تحقیق در منابع آکادمیک و مقالات علمی، با برخی تکنیک های موجود آشنا شدم که در ادامه به صورت عملی اونها رو بررسی می کنم.
مشکل اول: بارگذاری نامنظم عناصر صفحه
راه حل استفاده از تکنیک انتظار هوشمند:
from selenium.webdriver.support.ui import WebDriverWait def wait_for_element(driver, selector): return WebDriverWait(driver, 15).until( lambda d: d.find_element(*selector) )
مشکل دوم: سازگاری با مرورگرهای مختلف
با تغییر تنظیمات اولیه میشد روی سیستم های متفاوت اجرا کرد:
# تنظیمات پایه برای اجرا options = webdriver.ChromeOptions() options.add_argument('--disable-gpu')
options.add_argument('--headless=new')
پس از تکمیل اسکریپت، موفق شدم:
برای تکمیل این پروژه از منابع زیر استفاده کردم:
اگر قصد شروع دارید:
این تجربه به من نشان داد که چگونه می توان با ترکیب دانش برنامه نویسی و نیازهای واقعی، راهکارهای عملی توسعه داد. امیدوارم این نوشته برای دانشجویان و پژوهشگران مفید واقع بشه.