Berikan Proxy kepada Pelayar RSelenium Semasa Membuka Sesi
Gunakan extraCapabilities untuk laluan pelayar, dan bezakan penolakan protokol sesi daripada pelayar yang tidak dapat mencapai proksi.
Berikan proksi sebagai keupayaan sesi pelayar sebelum driver$open(), dalam penggunaan RSelenium yang pelayan 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 mengenal pasti perkhidmatan WebDriver. Keupayaan itu menerangkan ke mana pelayar pergi seterusnya. Tetapan proksi HTTP dalam R sahaja tidak mengkonfigurasi laluan pelayar itu.
Gunakan host:port dalam httpProxy dan sslProxy. Yang kedua memilih destinasi HTTPS; ia tidak bermaksud pendengar proksi yang dilindungi TLS. Calon HTTP awam daripada senarai proksi HTTP menyediakan hos dan port untuk medan ini, dengan syarat hos pelayar dapat mencapainya.
Kegagalan mana berlaku dahulu?
Jika pembukaan sesi ditolak, semak keserasian protokol sebelum menukar titik akhir proksi. Sumber remoteDriver RSelenium menghantar desiredCapabilities lama; mana-mana pelayan WebDriver semasa boleh menolak format itu sebelum pelayar wujud untuk menguji laluan.
Jika sesi terbuka tetapi navigasi gagal, semak kebolehcapaian daripada hos pelayar sebenar. Untuk kontena atau nod Grid, localhost bermaksud nod itu, bukan stesen kerja R.