Jak zacházet s ověřováním proxy v Selenium Webdriver
⚡ Chytré shrnutí
Ověřování proxy v Selenium WebDriver zpracovává vyskakovací okno s přihlašovacími údaji, které se zobrazí, když se prohlížeč připojí přes zabezpečený proxy server. Protože Selenium Nelze přímo ovládat nativní dialogy, dva přístupy používají nástroj AutoIt a vestavěná upozornění.

Co je proxy?
Proxy funguje jako prostředník mezi klienty odesílajícími požadavky a odpovědí serveru. Primárním použitím proxy je zachování soukromí a zapouzdření mezi více interaktivními systémy.
Proxy může také přidat další vrstvu zabezpečení na webu tím, že funguje jako firewall mezi klientem a webovými servery. To se používá zejména tehdy, když webové stránky, které klienti používají, musí být označeny jako povolené nebo blokované na základě obsahu webových stránek.
Tento proces je známý jako „filtrování obsahu“ a nejčastěji se používá ve vzdělávacích institucích, firemních kancelářích atd. Filtrování obsahu lze snadno provést pomocí proxy serveru. V podmínkách internetu může být proxy implementován jako samostatný server, který stojí mezi klientskými stroji a skutečnými webovými nebo databázovými servery, které reagují.
Rozdíl mezi SOCKS a HTTP Proxy
| SOCKS | HTTP proxy |
|---|---|
| SOCKS znamená zabezpečené zásuvky. Obecně se používá jako firewall mezi klientem a serverem | HTTP Proxy lze také použít jako firewall mezi klientem a serverem, ale lze jej použít pouze pro požadavky HTTP |
| SOCKS neinterpretuje vyměňovaná data | HTTP Proxy interpretuje data vyměňovaná mezi klientem a serverem |
| Výkonově pomalejší | Lepší výkon ve srovnání s SOCKS |
Jak zacházet s proxy v Selenium Webdriver v Chrome
HTTP proxy ověřování s Selenium v Chrome lze zpracovat pomocí následujících přístupů
- Použití nástroje AutoIt
- Použití upozornění
Použití nástroje AutoIt
AutoIt je nástroj třetí strany, který se používá pro automatizaci plochy systému Windows. Od té doby Selenium zpracovává pouze webová vyskakovací okna a okna, manipulace s ovládacími prvky operačního systému není možná Selenium.
To vyžaduje použití externích nástrojů třetích stran, jako je AutoIt, k integraci s SeleniumProto se AutoIt nejčastěji používá pro zpracování nahrávání a stahování souborů na webových stránkách.
Chcete-li používat AutoIt, musíte si stáhnout a nainstalovat software AutoIt na naše lokální počítače.
Stažení instalace AutoIt je popsáno v článek.
Otevřete Programy – Nástroj Autoit – Editor skriptů SciTE a přidejte níže uvedený skript AutoIt do editoru Autoit a uložte jej do systému jako „ProxyAuthentication.au3“
Zkompilujte soubor a převeďte jej jako 'ProxyAuthentication.exe.'
In Eclipse, přidejte soubor AutoIt do Selenium Skriptujte a spusťte
Níže je uveden skript AutoIt pro ověřování HTTP Proxy
Send("guru99{ENTER}") Send("guru99{ENTER}")
Pro spuštění je potřeba předat soubor AutoIt. Selenium webdriver pomocí níže uvedeného kódu
Zdroj Code:
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"); } }
Code Vysvětlení:
- V prvním kroku inicializujete instanci ovladače Chrome nastavením systémové vlastnosti tak, aby ukazovala na soubor chromedriver.exe
- Ve druhém kroku inicializujete objekt webového ovladače a předáte mu webovou stránku. URL pomocí metody get
- Nakonec předáváte uživatelské jméno a heslo do vyskakovacího okna ověřování HTTP Proxy pomocí souboru skriptu AutoIt.
Code Výstup:

Použití upozornění
Upozornění jsou jednoduché, vestavěné funkce poskytované Selenium webový ovladač. Vyskakovací okna ověřování proxy můžete zpracovávat pomocí Selenium webový ovladač přepnutím na výstrahu ověřování HTTP proxy a předáním uživatelského jména a hesla přímo výstrahě. S pomocí metody odesílání klíčů.
Příklad:
Scénář testu:
Zpracujte vyskakovací okno ověřování HTTP Proxy na webu: https://demo.guru99.com/test/basic_auth.php pomocí Upozornění v Selenium webový ovladač.
Příklad zdrojového kódu:
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(); } }
Code Výstup
Ověření proxy bylo úspěšně provedeno.
Code Vysvětlení:
- Zpočátku vytváříte instanci ovladače Chrome nastavením vlastnosti webdriver tak, aby ukazovala umístění souboru chromedriver.exe
- Pak otevíráte URL požadované webové stránky předáním URL jako parametr metody driver.get()
- Jednou URL se otevře, přepnete na upozornění na uživatelské jméno a odešlete uživatelské jméno – guru99. Poté kliknete na tlačítko OK v upozornění pomocí metody alert.accept
- Poté přecházíte na upozornění na heslo a posíláte heslo – guru99. Poté kliknete na tlačítko OK na upozornění pomocí metody alert.accept
