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.

Artigos relacionados