So handhaben Sie die Proxy-Authentifizierung in Selenium Webtreiber
โก Intelligente Zusammenfassung
Proxy-Authentifizierung in Selenium WebDriver kรผmmert sich um das Anmeldeinformations-Popup, das erscheint, wenn ein Browser รผber einen sicheren Proxy-Server eine Verbindung herstellt. Selenium Da native Dialoge nicht direkt bedient werden kรถnnen, werden zwei Ansรคtze verwendet, die das AutoIt-Tool und integrierte Warnmeldungen nutzen.

Was ist ein Proxy?
Ein Proxy fungiert als Vermittler zwischen Clients, die Anfragen senden, und Servern, die antworten. Der Hauptzweck eines Proxys besteht darin, den Datenschutz und die Kapselung zwischen mehreren interaktiven Systemen aufrechtzuerhalten.
Ein Proxy kann auch eine weitere Sicherheitsebene im Web hinzufรผgen, indem er als Firewall zwischen Client und Webservern fungiert. Dies kommt insbesondere dann zum Einsatz, wenn die von Kunden genutzten Websites aufgrund des Website-Inhalts als erlaubt oder gesperrt gekennzeichnet werden mรผssen.
Dieser Prozess ist als โInhaltsfilterungโ bekannt und wird am hรคufigsten in Bildungseinrichtungen, Unternehmensbรผros usw. verwendet. Die Inhaltsfilterung kann mithilfe eines Proxys problemlos durchgefรผhrt werden. Im Internet kann ein Proxy als separater Server implementiert werden, der zwischen Client-Rechnern und den tatsรคchlich antwortenden Web- oder Datenbankservern steht.
Unterschied zwischen SOCKS und HTTP-Proxy
| SOCKS | HTTP-Proxy |
|---|---|
| SOCKS steht fรผr gesicherte Steckdosen. Es wird im Allgemeinen als Firewall zwischen dem Client und dem Server verwendet | HTTP-Proxy kann auch als Firewall zwischen dem Client und dem Server verwendet werden, kann jedoch nur fรผr HTTP-Anfragen verwendet werden |
| SOCKS interpretiert die ausgetauschten Daten nicht | HTTP-Proxy interpretiert die Daten, die zwischen dem Client und dem Server ausgetauscht werden |
| Von der Leistung her langsamer | Bessere Leistung im Vergleich zu SOCKS |
Umgang mit Proxy in Selenium Webtreiber in Chrome
HTTP-Proxy-Authentifizierung mit Selenium in Chrome kann mit den folgenden Ansรคtzen behandelt werden
- Verwendung des AutoIt-Tools
- Verwenden von Warnungen
Verwendung des AutoIt-Tools
AutoIt ist ein Drittanbieter-Tool, das zur Automatisierung des Windows-Desktops verwendet wird. Selenium verarbeitet nur webbasierte Popups und Fenster, die Verarbeitung von Betriebssystemsteuerelementen ist nicht mรถglich mit Selenium.
Dies erfordert die Integration externer Drittanbieter-Tools wie AutoIt. SeleniumDeshalb wird AutoIt am hรคufigsten fรผr die Abwicklung von Datei-Uploads und Datei-Downloads auf Webseiten verwendet.
Um AutoIt nutzen zu kรถnnen, mรผssen Sie die AutoIt-Software auf Ihren lokalen Rechnern herunterladen und installieren.
Das Herunterladen und Installieren von AutoIt wird im Folgenden beschrieben. Artikel.
รffnen Sie โProgramme โ Autoit-Tool โ SciTE-Skripteditorโ, fรผgen Sie das unten genannte AutoIt-Skript im Autoit-Editor hinzu und speichern Sie es als โProxyAuthentication.au3โ in Ihrem System
Kompilieren Sie die Datei und konvertieren Sie sie als โProxyAuthentication.exeโ.
In EclipseFรผgen Sie die AutoIt-Datei hinzu zu Selenium Skript erstellen und ausfรผhren
Nachfolgend finden Sie das AutoIt-Skript fรผr die HTTP-Proxy-Authentifizierung.
Send("guru99{ENTER}") Send("guru99{ENTER}")
Sie mรผssen die AutoIt-Datei zur Ausfรผhrung รผbergeben. Selenium Webdriver mit dem folgenden Code
Quelle 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 Erlรคuterung:
- Im ersten Schritt initialisieren Sie eine Instanz des Chrome-Treibers, indem Sie die Systemeigenschaft so festlegen, dass sie auf die Datei chromedriver.exe verweist
- Im zweiten Schritt initialisieren Sie dann ein Webdriver-Objekt und รผbergeben die Website. URL mit der get-Methode
- Schlieรlich รผbergeben Sie Benutzername und Passwort an das Authentifizierungs-Popup des HTTP-Proxys mithilfe einer AutoIt-Skriptdatei.
Code Ausgang:

Verwenden von Warnungen
Warnungen sind eine einfache, integrierte Funktion, die von bereitgestellt wird Selenium Web-Treiber. Sie kรถnnen mit Proxy-Authentifizierungs-Popups umgehen Selenium Web-Treiber, indem Sie zur HTTP-Proxy-Authentifizierungswarnung wechseln und den Benutzernamen und das Passwort direkt an die Warnung รผbergeben. Mit Hilfe der Methode zum Senden von Schlรผsseln.
Beispiel:
Testszenario:
Behandeln Sie das Popup-Fenster zur HTTP-Proxy-Authentifizierung auf der Website: https://demo.guru99.com/test/basic_auth.php Verwenden von Warnungen in Selenium Web-Treiber.
Quellcode-Beispiel:
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 Ausgang
Proxy-Authentifizierung erfolgreich durchgefรผhrt.
Code Erlรคuterung:
- Zunรคchst instanziieren Sie eine Instanz des Chrome-Treibers, indem Sie die Webdriver-Eigenschaft so festlegen, dass sie auf den Speicherort der Datei chromedriver.exe verweist
- Dann รถffnen Sie die URL der erforderlichen Website durch Bestehen der URL als Parameter an die driver.get()-Methode
- Sobald URL Wenn die Benachrichtigung geรถffnet ist, wechseln Sie zur Benutzernamen-Benachrichtigung und senden den Benutzernamen โguru99โ. Anschlieรend klicken Sie in der Benachrichtigung mithilfe der Methode โalert.acceptโ auf die Schaltflรคche โOKโ.
- Anschlieรend wechseln Sie zur Passwortwarnung und senden das Passwort an guru99. Anschlieรend klicken Sie in der Warnung mithilfe der Methode โalert.acceptโ auf die Schaltflรคche โOKโ.
