كيفية التعامل مع مصادقة الوكيل في Selenium برنامج تشغيل الويب
ما هو البروكسي؟
يعمل الوكيل كوسيط بين العملاء الذين يرسلون الطلبات ويستجيب الخادم. الاستخدام الأساسي للوكيل هو الحفاظ على الخصوصية والتغليف بين الأنظمة التفاعلية المتعددة.
يمكن للوكيل أيضًا إضافة طبقة أخرى من الأمان على الويب من خلال العمل كجدار حماية بين العميل وخوادم الويب. يُستخدم هذا بشكل خاص عندما يتعين تصنيف مواقع الويب التي يستخدمها العملاء على أنها مسموح بها أو محظورة بناءً على محتوى موقع الويب.
تُعرف هذه العملية باسم "تصفية المحتوى" وهي شائعة الاستخدام في المؤسسات التعليمية ومكاتب الشركات وما إلى ذلك. ويمكن إنجاز تصفية المحتوى بسهولة بمساعدة الوكيل. فيما يتعلق بالإنترنت، يمكن تنفيذ الوكيل كخادم منفصل يقف بين الأجهزة العميلة وخوادم الويب أو خوادم قواعد البيانات الفعلية المستجيبة.
الفرق بين SOCKS وHTTP Proxy
SOCKS | الموقع الوكيل |
---|---|
SOCKS تعني المقابس الآمنة. يتم استخدامه بشكل عام كجدار حماية بين العميل والخادم | يمكن أيضًا استخدام وكيل HTTP كجدار حماية بين العميل والخادم ولكن يمكن استخدامه فقط لطلبات HTTP |
لا تقوم SOCKS بتفسير البيانات التي يتم تبادلها | يقوم وكيل HTTP بتفسير البيانات التي يتم تبادلها بين العميل والخادم |
أبطأ من حيث الأداء | أداء أفضل مقارنة بالجوارب |
كيفية التعامل مع الوكيل في Selenium برنامج تشغيل الويب في كروم
مصادقة وكيل HTTP مع Selenium يمكن التعامل مع Chrome باستخدام الأساليب التالية
- باستخدام أداة AutoIT
- استخدام التنبيهات
باستخدام أداة AutoIT
Auto IT هي أداة تابعة لجهة خارجية تُستخدم لأتمتة سطح مكتب Windows. منذ Selenium يتعامل فقط مع النوافذ المنبثقة والنوافذ المستندة إلى الويب، ولا يمكن التعامل مع عناصر التحكم في نظام التشغيل باستخدام Selenium.
ويتطلب ذلك استخدام أدوات خارجية مثل Auto IT للتكامل معها Selenium. ولهذا السبب، يتم استخدام Auto IT بشكل شائع للتعامل مع تحميلات الملفات وتنزيلات الملفات على مواقع الويب.
لاستخدام AutoIT، تحتاج إلى تنزيل برنامج AutoIT وتثبيته على أجهزتنا المحلية.
يتم تغطية تنزيل تثبيت AutoIT في ملف البند.
افتح البرامج - أداة Autoit - SciTE Script Editor وأضف نص AutoIt المذكور أدناه في محرر Autoit واحفظه باسم "ProxyAuthentication.au3" في نظامك
قم بتجميع الملف وتحويله كـ "ProxyAuthentication.exe".
In Eclipse، أضف ملف Auto IT إلى Selenium البرنامج النصي والتشغيل
يوجد أدناه البرنامج النصي AutoIT لمصادقة وكيل HTTP
Send("guru99{ENTER}") Send("guru99{ENTER}")
تحتاج إلى تمرير ملف Auto IT للتنفيذ Selenium برنامج تشغيل الويب باستخدام الكود أدناه
كود المصدر:
package Guru99Demo; import java.io.IOException; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class AutoITDemo { public static void main(String[] args) throws IOException { System.setProperty("webdriver.chrome.driver", "D:\\ chromedriver.exe");; WebDriver driver = new ChromeDriver(); driver.get("http://demo.guru99.com/test/basic_auth.php"); //Passing the AutoIt Script to Selenium Runtime.getRuntime().exec("D:\\Data_Personal\\ProxyAuthentication.exe"); } }
شرح الكود:
- في الخطوة الأولى، تقوم بتهيئة مثيل لبرنامج تشغيل Chrome عن طريق تعيين خاصية النظام للإشارة إلى ملف chromedriver.exe
- في الخطوة الثانية، تقوم بعد ذلك بتهيئة كائن برنامج تشغيل الويب وتمرير عنوان URL لموقع الويب باستخدام طريقة get
- أخيرًا، أنت تقوم بتمرير اسم المستخدم وكلمة المرور إلى النافذة المنبثقة لمصادقة وكيل HTTP باستخدام ملف البرنامج النصي AutoIT
إخراج الكود:
استخدام التنبيهات
التنبيهات هي ميزة بسيطة تحمل في ثناياه عوامل مقدمة من Selenium سائق الويب. يمكنك التعامل مع النوافذ المنبثقة لمصادقة الوكيل باستخدام Selenium برنامج تشغيل الويب عن طريق التبديل إلى تنبيه مصادقة وكيل HTTP وتمرير اسم المستخدم وكلمة المرور مباشرةً إلى التنبيه. بمساعدة طريقة إرسال المفاتيح.
مثال:
سيناريو الاختبار:
تعامل مع النافذة المنبثقة لمصادقة HTTP Proxy على موقع الويب: https://demo.guru99.com/test/basic_auth.php باستخدام التنبيهات في Selenium سائق الويب.
مثال كود المصدر:
package Guru99Demo; import java.io.IOException; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class AlertsDemo { public static void main(String args[]) throws IOException { System.setProperty("webdriver.chrome.driver", "D:\\Data_Personal\\Software\\chromedriver_win32\\chromedriver.exe");; WebDriver driver = new ChromeDriver(); driver.get("http://demo.guru99.com/test/basic_auth.php"); // Handling Username alert driver.switchTo().alert().sendKeys("guru99"); driver.switchTo().alert().accept(); // Handling Password alert driver.switchTo().alert().sendKeys("guru99"); driver.switchTo().alert().accept(); } }
إخراج الكود
تمت مصادقة الوكيل بنجاح.
شرح الكود:
- في البداية، أنت تقوم بإنشاء مثيل لبرنامج تشغيل Chrome عن طريق تعيين خاصية webdriver للإشارة إلى موقع ملف chromedriver.exe
- بعد ذلك، تقوم بفتح عنوان URL لموقع الويب المطلوب عن طريق تمرير عنوان URL كمعلمة إلى طريقة driver.get()
- بمجرد فتح عنوان URL، فإنك تقوم بالتبديل إلى تنبيه اسم المستخدم وإرسال اسم المستخدم – guru99. تقوم بعد ذلك بالنقر فوق الزر "موافق" في التنبيه باستخدام طريقة التنبيه.قبول
- بعد ذلك، تقوم بالتبديل إلى تنبيه كلمة المرور وإرسال كلمة المرور – guru99. تقوم بعد ذلك بالنقر فوق الزر "موافق" في التنبيه باستخدام طريقة التنبيه.قبول
الملخص
- يعمل الوكيل كوسيط بين العملاء الذين يرسلون الطلبات ويستجيب الخادم. الاستخدام الأساسي للوكيل هو الحفاظ على الخصوصية و التغليف بين الأنظمة التفاعلية المتعددة.
- مصادقة وكيل HTTP مع Selenium يمكن التعامل مع Chrome باستخدام الأساليب التالية
- تمرير اسم المستخدم وكلمة المرور في عنوان URL لموقع الويب
- باستخدام أداة AutoIT
- استخدام التنبيهات
- من بين الأساليب الثلاثة المذكورة أعلاه، يعد استخدام التنبيهات الطريقة الأكثر فعالية للتعامل مع مصادقة وكيل HTTP Selenium محرك الويب