Dengan solusi yang sudah dibahas di atas, solusi yang paling dapat diandalkan adalah menggunakan Browsermob-Proxy
Namun saat bekerja dengan mesin jaringan jarak jauh, Browsermob-proxy tidak terlalu membantu.
Inilah cara saya memperbaiki masalah dalam kasus saya. Semoga dapat bermanfaat bagi siapa pun yang memiliki pengaturan serupa.
- Tambahkan ekstensi ModHeader ke browser chrome
Bagaimana cara mengunduh Modheadernya? Tautan
ChromeOptions options = new ChromeOptions();
options.addExtensions(new File(C://Downloads//modheader//modheader.crx));
// Set the Desired capabilities
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
// Instantiate the chrome driver with capabilities
WebDriver driver = new RemoteWebDriver(new URL(YOUR_HUB_URL), options);
- Buka ekstensi browser dan ambil ID konteks Penyimpanan Lokal dari ModHeader
- Arahkan ke URL ModHeader untuk mengatur Konteks Penyimpanan Lokal
.
// set the context on the extension so the localStorage can be accessed
driver.get("chrome-extension://idgpnmonknjnojddfkpgkljpfnnfcklj/_generated_background_page.html");
Where `idgpnmonknjnojddfkpgkljpfnnfcklj` is the value captured from the Step# 2
- Sekarang tambahkan header ke permintaan menggunakan
Javascript
.
((Javascript)driver).executeScript(
"localStorage.setItem('profiles', JSON.stringify([{ title: 'Selenium', hideComment: true, appendMode: '',
headers: [
{enabled: true, name: 'token-1', value: 'value-1', comment: ''},
{enabled: true, name: 'token-2', value: 'value-2', comment: ''}
],
respHeaders: [],
filters: []
}]));");
Dimana token-1
, value-1
, token-2
, value-2
adalah header permintaan dan nilai yang akan ditambahkan.
Sekarang navigasikan ke aplikasi web yang diperlukan.
driver.get("your-desired-website");
person
Praveen
schedule
17.06.2020