Dê ao navegador RSelenium o seu proxy ao abrir a sessão
Use extraCapabilities para a rota do navegador e distinga a rejeição do protocolo de sessão de um navegador que não consegue alcançar o proxy.
Forneça o proxy como capacidade de sessão do navegador antes de driver$open(), numa implantação de RSelenium cujo servidor WebDriver aceita o protocolo de sessão:
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 identifica o serviço WebDriver. A capacidade descreve para onde o navegador vai em seguida. Uma definição de proxy HTTP no R por si só não configura essa rota do navegador.
Use host:port em httpProxy e sslProxy. O segundo escolhe destinos HTTPS; não implica um ouvinte de proxy protegido por TLS. Um candidato HTTP público da lista de proxies HTTP fornece um host e uma porta para esses campos, desde que o host do navegador consiga alcançá-lo.
Qual falha ocorreu primeiro?
Se a abertura da sessão for rejeitada, verifique a compatibilidade do protocolo antes de mudar o endpoint do proxy. A fonte remoteDriver do RSelenium envia desiredCapabilities antigos; qualquer servidor WebDriver atual pode rejeitar esse formato antes de existir um navegador para testar a rota.
Se a sessão abrir mas a navegação falhar, verifique a acessibilidade a partir do host real do navegador. Para um contêiner ou nó Grid, localhost significa esse nó, não a estação de trabalho R.