Beri Proxy pada Browser RSelenium Saat Membuka Sesi
Gunakan extraCapabilities untuk rute browser, dan bedakan penolakan protokol sesi dari browser yang tidak dapat menjangkau proxy.
Berikan proxy sebagai kemampuan sesi browser sebelum driver$open(), dalam penerapan RSelenium yang server WebDriver-nya menerima protokol sesi:
browser_proxy <- list(
proxyType = 'manual',
httpProxy = 'proxy.example:8080',
sslProxy = 'proxy.example:8080'
)
driver <- RSelenium::remoteDriver(
remoteServerAddr = 'webdriver.example',
port = 4444L,
browserName = 'chrome',
extraCapabilities = list(proxy = browser_proxy)
)
driver$open()remoteServerAddr mengidentifikasi layanan WebDriver. Kemampuan itu menjelaskan ke mana browser pergi selanjutnya. Pengaturan proxy HTTP di R saja tidak mengonfigurasi rute browser tersebut.
Gunakan host:port di httpProxy dan sslProxy. Yang terakhir memilih tujuan HTTPS; itu tidak berarti pendengar proxy yang dilindungi TLS. Kandidat HTTP publik dari daftar proxy HTTP menyediakan host dan port untuk kolom ini, asalkan host browser dapat menjangkaunya.
Kegagalan mana yang terjadi lebih dulu?
Jika pembukaan sesi ditolak, periksa kompatibilitas protokol sebelum mengubah titik akhir proxy. Sumber remoteDriver RSelenium mengirim desiredCapabilities lama; server WebDriver saat ini mana pun dapat menolak format itu sebelum ada browser untuk menguji rute.
Jika sesi terbuka tetapi navigasi gagal, periksa keterjangkauan dari host browser yang sebenarnya. Untuk kontainer atau node Grid, localhost berarti node itu, bukan stasiun kerja R.