Cara Menangani Otentikasi Proxy di Selenium Driver web
Apa itu Proksi?
Proksi bertindak sebagai perantara antara klien yang mengirimkan permintaan dan server merespons. Kegunaan utama dari proxy adalah untuk menjaga privasi dan enkapsulasi antara beberapa sistem interaktif.
Proksi juga dapat menambahkan lapisan keamanan lain di web dengan bertindak sebagai firewall antara Klien dan server web. Hal ini terutama digunakan ketika situs web yang digunakan klien harus diberi label diizinkan atau diblokir berdasarkan konten situs web.
Proses ini dikenal sebagai 'Pemfilteran Konten' dan paling umum digunakan di Institusi Pendidikan, Kantor Perusahaan, dll. Penyaringan Konten dapat dengan mudah dilakukan dengan bantuan proxy. Dalam istilah Internet, proxy dapat diimplementasikan sebagai server terpisah yang berdiri di antara mesin klien dan server web atau database aktual yang merespons.
Perbedaan antara SOCKS dan Proksi HTTP
SOCKS | Proxy HTTP |
---|---|
SOCKS adalah singkatan dari soket aman. Biasanya digunakan sebagai firewall antara Klien dan server | HTTP Proxy juga dapat digunakan sebagai firewall antara Client dan server namun hanya dapat digunakan untuk HTTP Request saja |
SOCKS tidak menafsirkan data yang dipertukarkan | Proxy HTTP menafsirkan data yang dipertukarkan antara Klien dan server |
Lebih lambat dalam hal kinerja | Performa lebih baik dibandingkan SOCKS |
Cara Menangani Proxy di Selenium driver web di Chrome
Otentikasi Proksi HTTP dengan Selenium di Chrome dapat ditangani menggunakan pendekatan berikut
- Menggunakan alat AutoIT
- Menggunakan Peringatan
Menggunakan alat AutoIT
Auto IT adalah alat pihak ketiga yang digunakan untuk otomatisasi desktop Windows. Karena Selenium hanya menangani popup dan jendela berbasis web, penanganan kontrol sistem operasi tidak dimungkinkan menggunakan Selenium.
Hal ini memerlukan penggunaan alat pihak ketiga eksternal seperti Auto IT untuk diintegrasikan Selenium. Untuk itu, Auto IT paling sering digunakan untuk menangani upload file dan download file di website.
Untuk menggunakan AutoIT, Anda perlu mengunduh dan menginstal perangkat lunak AutoIT di mesin lokal kami.
Pengunduhan dan pemasangan AutoIT tercakup dalam artikel.
Buka Program – Alat Autoit – Editor Skrip SciTE dan tambahkan skrip AutoIt yang disebutkan di bawah ini di editor Autoit dan simpan sebagai 'ProxyAuthentication.au3' di sistem Anda
Kompilasi file dan Konversikan sebagai 'ProxyAuthentication.exe.'
In Eclipse, tambahkan file TI Otomatis ke Selenium Skrip dan jalankan
Di bawah ini adalah skrip AutoIT untuk otentikasi Proxy HTTP
Send("guru99{ENTER}") Send("guru99{ENTER}")
Anda harus meneruskan file Auto IT untuk dieksekusi Selenium webdriver menggunakan kode di bawah ini
Kode sumber:
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"); } }
Penjelasan Kode:
- Pada langkah pertama, Anda menginisialisasi instance driver Chrome dengan mengatur properti sistem untuk mengarahkan file chromedriver.exe
- Pada langkah kedua, Anda kemudian menginisialisasi objek driver web dan meneruskan URL situs web menggunakan metode get
- Terakhir, Anda meneruskan nama pengguna dan kata sandi ke popup otentikasi Proxy HTTP menggunakan file skrip AutoIT
Keluaran Kode:



Menggunakan Peringatan
Peringatan adalah fitur bawaan yang sederhana yang disediakan oleh Selenium pengemudi web. Anda dapat menangani popup otentikasi proxy menggunakan Selenium driver web dengan beralih ke peringatan autentikasi proksi HTTP dan meneruskan nama pengguna dan kata sandi langsung ke peringatan tersebut. Dengan bantuan metode kirim kunci.
Example:
Skenario Uji:
Tangani popup autentikasi Proxy HTTP di situs web: https://demo.guru99.com/test/basic_auth.php menggunakan Peringatan di Selenium pengemudi web.
Contoh kode sumber:
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(); } }
Keluaran Kode
Otentikasi Proksi berhasil dilakukan.
Penjelasan Kode:
- Awalnya, Anda membuat instance driver Chrome dengan mengatur properti webdriver untuk menunjukkan lokasi file chromedriver.exe
- Kemudian, Anda membuka URL situs web yang diperlukan dengan meneruskan URL tersebut sebagai parameter ke metode driver.get()
- Setelah URL dibuka, Anda beralih ke peringatan nama pengguna dan mengirimkan nama pengguna – guru99. Anda kemudian mengklik tombol OK pada peringatan menggunakan metode alert.accept
- Kemudian, Anda beralih ke peringatan kata sandi dan mengirimkan kata sandi – guru99. Anda kemudian mengklik tombol OK pada peringatan menggunakan metode alert.accept
Ringkasan
- Proksi bertindak sebagai perantara antara klien yang mengirimkan permintaan dan server merespons. Kegunaan dasar dari proxy adalah untuk menjaga privasi dan enkapsulasi antara beberapa sistem interaktif.
- Otentikasi Proksi HTTP dengan Selenium di Chrome dapat ditangani menggunakan pendekatan berikut
- Melewati nama pengguna dan kata sandi di URL situs web
- Menggunakan alat AutoIT
- Menggunakan Peringatan
- Dari ketiga pendekatan di atas, penggunaan alert merupakan cara yang paling efektif untuk menangani autentikasi HTTP Proxy Selenium driver web