Kako rukovati proxy autentifikacijom u Selenium Webdriver

Što je proxy?

Proxy djeluje kao posrednik između klijenata koji šalju zahtjeve i poslužitelja koji odgovara. Primarna upotreba proxyja je održavanje privatnosti i enkapsulacije između više interaktivnih sustava.

Proxy također može dodati još jedan sloj sigurnosti na webu djelujući kao vatrozid između klijenta i web poslužitelja. Ovo se posebno koristi kada web stranice koje klijenti koriste moraju biti označene kao dopuštene ili blokirane na temelju sadržaja web stranice.

Ovaj proces je poznat kao 'Filtriranje sadržaja' i najčešće se koristi u obrazovnim ustanovama, korporativnim uredima itd. Filtriranje sadržaja može se lako izvršiti uz pomoć proxyja. Što se tiče interneta, proxy se može implementirati kao zaseban poslužitelj koji stoji između klijentskih strojeva i stvarnih web poslužitelja ili poslužitelja baze podataka koji odgovaraju.

Razlika između SOCKS-a i HTTP proxyja

čarape HTTP proxy
SOCKS označava osigurane utičnice. Obično se koristi kao vatrozid između klijenta i poslužitelja HTTP proxy se također može koristiti kao vatrozid između klijenta i poslužitelja, ali se može koristiti samo za HTTP zahtjeve
SOCKS ne tumači podatke koji se razmjenjuju HTTP proxy tumači podatke koji se razmjenjuju između klijenta i poslužitelja
Sporije u pogledu performansi Bolji učinak u usporedbi s SOCKS

Kako rukovati proxyjem Selenium Webdriver u Chromeu

HTTP proxy provjera autentičnosti s Selenium u Chromeu može se rukovati pomoću sljedećih pristupa

  • Korištenje alata AutoIT
  • Korištenje upozorenja

Korištenje alata AutoIT

Auto IT je alat treće strane koji se koristi za automatizaciju Windows radne površine. Od Selenium rukuje samo web-baziranim skočnim prozorima i prozorima, rukovanje kontrolama operativnog sustava nije moguće koristiti Selenium.

To zahtijeva korištenje vanjskih alata trećih strana kao što je Auto IT s kojima se treba integrirati Selenium. Za to se Auto IT najčešće koristi za rukovanje učitavanjem i preuzimanjem datoteka na web stranicama.

Da biste koristili AutoIT, morate preuzeti i instalirati AutoIT softver na našim lokalnim računalima.

Preuzimanje instalacije AutoIT-a je pokriveno u članak.

Otvorite Programs – Autoit tool – SciTE Script Editor i dodajte dolje navedenu AutoIt skriptu u Autoit editor i spremite je kao 'ProxyAuthentication.au3' u svoj sustav

Prevedite datoteku i pretvorite je u "ProxyAuthentication.exe".

In Eclipse, dodajte datoteku Auto IT u Selenium Skriptirajte i pokrenite

Ispod je AutoIT skripta za HTTP proxy provjeru autentičnosti

Send("guru99{ENTER}")
Send("guru99{ENTER}")

Morate proslijediti datoteku Auto IT za izvršenje Selenium webdriver pomoću donjeg koda

Izvorni kod:

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");
    }
}

Objašnjenje koda:

  • U prvom koraku inicijalizirate instancu Chrome upravljačkog programa postavljanjem svojstva sustava da usmjerava na datoteku chromedriver.exe
  • U drugom koraku inicijalizirate objekt web upravljačkog programa i prosljeđujete URL web stranice pomoću metode get
  • Konačno, prosljeđujete korisničko ime i lozinku skočnom prozoru za autentifikaciju HTTP proxyja pomoću datoteke skripte AutoIT

Izlaz koda:

Rukovanje upozorenjem o korisničkom imenu pomoću AutoIT-a
Rukovanje upozorenjem o korisničkom imenu pomoću AutoIT-a
Rukovanje upozorenjem lozinke pomoću AutoIT-a

Rukovanje upozorenjem lozinke pomoću AutoIT-a
Zaslon uspješne provjere autentičnosti proxyja

Zaslon uspješne provjere autentičnosti proxyja

Korištenje upozorenja

Upozorenja su jednostavna, ugrađena značajka koju pruža Selenium web vozač. Možete upravljati proxy proxy skočnim prozorima za provjeru autentičnosti pomoću Selenium web upravljački program prebacivanjem na upozorenje za provjeru autentičnosti HTTP proxyja i prosljeđivanjem korisničkog imena i lozinke izravno u upozorenje. Uz pomoć metode slanja ključeva.

Primjer:

Testni scenarij:

Rukovanje skočnim prozorom za autentifikaciju HTTP proxyja na web mjestu: https://demo.guru99.com/test/basic_auth.php pomoću upozorenja u Selenium web vozač.

Primjer izvornog koda:

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();
    }
}

Izlaz koda

Proxy autentifikacija je uspješno obavljena.

Objašnjenje koda:

  • U početku instancirate instancu Chrome upravljačkog programa postavljanjem svojstva webdriver da pokazuje lokaciju datoteke chromedriver.exe
  • Zatim otvarate URL potrebne web stranice prosljeđujući URL kao parametar metodi driver.get().
  • Nakon što se URL otvori, prelazite na upozorenje o korisničkom imenu i šaljete korisničko ime – guru99. Zatim kliknete gumb U redu na upozorenju pomoću metode alert.accept
  • Zatim se prebacujete na upozorenje o lozinci i šaljete lozinku – guru99. Zatim kliknete gumb U redu na upozorenju pomoću metode alert.accept

Rezime

  • Proxy djeluje kao posrednik između klijenata koji šalju zahtjeve i poslužitelja koji odgovara. Osnovna uporaba proxyja je održavanje privatnosti i ovijanje između više interaktivnih sustava.
  • HTTP proxy provjera autentičnosti s Selenium u Chromeu može se rukovati pomoću sljedećih pristupa
  • Prosljeđivanje korisničkog imena i lozinke u URL-u web stranice
  • Korištenje alata AutoIT
  • Korištenje upozorenja
  • Od gornja tri pristupa, korištenje upozorenja je najučinkovitiji način za rukovanje HTTP proxy autentifikacijom Selenium mrežni pogonitelj