هذا السكربت مكتوب بلغة بايثون ويستخدم مكتبة Selenium (بالإضافة لمكتبات أخرى) لأتمتة عملية الدخول إلى موقع تقني بلانت (Techniplanet) وتنزيل الملفات (ملفّات ZIP) الخاصة بالـRevamp في معمل تكرير ميدور. فيما يلي ملخّصٌ لفكرته :
إعداد المتصفح والتحكّم فيه:
يستخدم السكربت Selenium مع متصفّح كروم (Chrome) وخياراته (Options).
هناك مسار محدّد للـChromeDriver، ويوجد أيضاً استخدام للـWebDriverManager لضمان الحصول على الإصدار المناسب.
تسجيل الدخول:
يستقبل السكربت بيانات اسم المستخدم وكلمة المرور.
يفتح موقع Techniplanet على صفحة تسجيل الدخول.
يملأ خانة اسم المستخدم وكلمة المرور ثم ينفّذ أمر الدخول (Enter).
التنقل في الموقع:
بعد تسجيل الدخول، ينتقل إلى الصفحات الداخلية للموقع (عبر النقر على أزرار وروابط محددة).
يستخدم أساليب الانتظار الصريح (Explicit Wait) من Selenium للانتظار حتى تصبح العناصر متوفرة.
اختيار الوحدة (unit) والانتقال إلى جداول الملفات:
يختار السكربت وحدة التشغيل المراد تنزيل ملفاتها (مثلاً الوحدة "2").
يدخل في Frame معيّن حيث توجد قائمة بالملفّات موزّعة على صفحات متعددة.
تنزيل الملفات:
يحدّد السكربت عدد الصفحات الكلّي المراد تحميلها.
لكل صفحة:
يحاول فتح الصفحة المعنية.
يأخذ لقطة شاشة (Screenshot) للصفحة ويخزّنها في مجلّد مخصّص يحمل رقم الصفحة.
يضغط على "تحديد كل الملفات" (Select all files) ثم ينقر زر "تحميل" (Download).
بعد ذلك تظهر أيقونة التحميل في الصفحة التالية ويتم النقر عليها لبدء التنزيل الفعلي.
ينتظر السكربت حتى يكتمل التحميل تمامًا (باستخدام دالة download_wait).
بعد اكتمال التنزيل، ينقل الملفّات (عادةً تكون بامتداد ZIP) من مجلد التنزيل الافتراضي إلى المجلّد المناسب لكل صفحة.
التأكّد من سلامة التحميل:
في نهاية السكربت، هناك جزءٌ يتحقّق من وجود ملف ZIP وملف الصورة (PNG) داخل كل مجلّد صفحة.
لو وجد أي خلل أو نقص في أحد المجلّدات يقوم بطباعة رسالة تفيد بضرورة التحقّق من هذا المجلّد.
باختصار، ينجز السكربت مهمّة:
الدخول تلقائيًا إلى موقع تقني بلانت.
اختيار الوحدة المناسبة.
تصفّح جميع الصفحات التابعة لها.
أخذ لقطة شاشة لكل صفحة.
تحديد كل ملفاتها وتحميلها.
نقل الملفات المحمّلة إلى مجلدٍ مُنظَّم حسب رقم الصفحة.
التحقّق من وجود ملفات ZIP وصور الشاشات بشكلٍ صحيح في كل صفحة.