تخيل أنك تعمل في أكثر وظيفة مللاً في العالم : وظيفة نسخ و تعبئة البيانات ، وطُلب منك نسخ آلاف المدخلات من ملفات الاِكسل كل واحدة على حِدة وادخالها لموقع اِلكتروني معين بطريقة يدوية لعينة ! كم من الوقت سيتطلب منك الأمر ؟ وكم من الجهد ؟!
عن طريق مكتبة سيلينوم (Selenium) تستطيع عمل برمجية بايثون من بضعة أسطر فقط، لِتقوم بنسخ البيانات تلقائيا وادخالها للموقع وكأن الأشباح تقوم بالعمل عوضاً عنك !
هذا مجرد مثال سطحي ، فمشروع
سيلينيوم (Selenium) بالأساس هو بيئة عمل محمولة لاختبار تطبيقات الويب عن
طريق كتابة سيناريوهات لعمل التصفح التلقائي (Web Automation) ومحاكاة
سلوكيات المستخدم على مواقع الانترنت : كالنقر على الأزرار والروابط وادخال
النصوص وعمليات تسجيل الدخول .. الخ . باختصار تستطيع عمل أتمتة كاملة للمتصفح .
لماذا نستخدم سيلينيوم :
- اختبار أداء مواقع وتطبيقات الويب والبحث عن الثغرات الأمنية واستغلالها .
- أتمتة الويب (Web Automation)عبر تسجيل خطوات واعادة تكريرها عن طريق المتصفح .
- عمل بعض هجمات القوة الغاشمة (Brute-force attacks) البسيطة جداً للمبتدئين لتخمين كلمات المرور عبر تجربة ادخال مجموعة من الكلمات .
- عمل هجمات السبام عبر أتمتة المنشورات والرسائل والتعليقات في مواقع التواصل .
- والمزيد ..
المتصفحات التي يعمل معها selenium webdriver :
المتصفحات التي يعمل معها selenium webdriver :
- Firefox
- Chrome
- Internet Explorer
- Safari
- Opera
- PhantomJS (متصفح بدون واجهة رسومية)
لتشغيل المكتبة تحتاج الى Python 2.6, 2.7 أو Python 3.3 أو النسخ التي بعدها .
تثبيت عبر أداة pip :
pip install -U seleniumالموقع الرسمي :
http://seleniumhq.github.io/selenium/docs/api/py/index.html
مثال بسيط على استخدام سيلينيوم :
مثال بسيط على استخدام سيلينيوم :
# استيراد المكتبة
from selenium import webdriver from selenium.webdriver.common.keys import Keys # استدعاء متصفح فيرفوكس
driver = webdriver.Firefox()
# python.org فتح موقع
driver.get("http://www.python.org") # البحث عن مربع البحث بالصفحة وتحديده
elem = driver.find_element_by_name("q")
# مسح محتوى مربع البحث
elem.clear()
# "python 3 " اِدخال كلمة البحث
elem.send_keys("python 3 ")
# نقر زر enter
elem.send_keys(Keys.RETURN)
# اغلاق نافذة المتصفح # driver.close()

شكرااا جزيلا اتمنى اتكون دورة حول selenium
ردحذفأزال المؤلف هذا التعليق.
ردحذف