Как да се справим с удостоверяването на прокси в Selenium Уебдрайвер
Какво е прокси?
Проксито действа като посредник между клиентите, изпращащи заявки, и сървъра, който отговаря. Основната употреба на прокси е да поддържа поверителност и капсулиране между множество интерактивни системи.
Проксито може също така да добави още едно ниво на сигурност в мрежата, като действа като защитна стена между клиента и уеб сървърите. Това се използва особено, когато уебсайтовете, които клиентите използват, трябва да бъдат етикетирани като разрешени или блокирани въз основа на съдържанието на уебсайта.
Този процес е известен като „Филтриране на съдържание“ и се използва най-често в образователни институции, корпоративни офиси и т.н. Филтрирането на съдържание може лесно да се осъществи с помощта на прокси. От гледна точка на Интернет, проксито може да бъде внедрено като отделен сървър, който стои между клиентските машини и действителните отговарящи уеб сървъри или сървъри на бази данни.
Разлика между SOCKS и HTTP прокси
ЧОРАПИ | Протокол HTTP |
---|---|
SOCKS означава защитени контакти. Обикновено се използва като защитна стена между клиента и сървъра | HTTP прокси може да се използва и като защитна стена между клиента и сървъра, но може да се използва само за HTTP заявки |
SOCKS не интерпретира данните, които се обменят | HTTP прокси интерпретира данните, които се обменят между клиента и сървъра |
По-бавно по отношение на производителността | По-добра производителност в сравнение с SOCKS |
Как да управлявате прокси в Selenium Уеб драйвер в Chrome
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 webdriver, използвайки кода по-долу
Програмен код:
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("https://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 прокси на уебсайта: 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("https://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. След това щракнете върху бутона OK в предупреждението, като използвате метода alert.accept
- След това превключвате към предупреждението за парола и изпращате паролата – guru99. След това щракнете върху бутона OK в предупреждението, като използвате метода alert.accept
Oбобщение
- Проксито действа като посредник между клиентите, изпращащи заявки, и сървъра, който отговаря. Основната употреба на прокси е да поддържа поверителност и капсулиране между множество интерактивни системи.
- HTTP прокси удостоверяване с Selenium в Chrome може да се управлява чрез следните подходи
- Предаване на потребителско име и парола в URL адреса на уебсайта
- Използване на инструмента AutoIT
- Използване на предупреждения
- От горните три подхода използването на предупреждения е най-ефективният начин за справяне с удостоверяването на HTTP прокси в Selenium уеб драйвер