Uma sessão Chromote conversa com um processo Chrome. Os pedidos do navegador seguem a configuração de proxy desse processo, por isso defina os argumentos antes de o criar:

args <- c(
  chromote::get_chrome_args(),
  "--proxy-server=http://proxy.example:8080"
)
browser <- chromote::Chrome$new(args = args)
controller <- chromote::Chromote$new(browser = browser)
session <- chromote::ChromoteSession$new(parent = controller)

Isto preserva os argumentos predefinidos existentes do Chromote e acrescenta o ouvinte HTTP; um ponto final da lista de proxies HTTP pode preencher o URL de exemplo para navegação pública permitida. Use antes um URL socks5 apenas quando o ponto final falar realmente SOCKS5. Remova um comutador de proxy existente em conflito ao montar o vetor de argumentos.

Execute as operações CDP pretendidas através de session e depois feche a sessão, o controlador e o navegador que possui como parte da limpeza da carga de trabalho R. Um caminho de limpeza R ao estilo try/finally é útil se a navegação gerar um erro.

Nas aplicações que usam o navegador predefinido partilhado do Chromote, set_chrome_args altera os valores predefinidos para a futura construção de navegadores. Não reinicia um processo existente. Criar um objeto Chrome explícito, como acima, torna visíveis a propriedade e o momento de arranque.

O próprio ambiente http_proxy ou https_proxy do R pode configurar um descarregador R sem alterar este navegador. Do mesmo modo, alterar a rota do Chrome não configura uma chamada API de R separada. Identifique que lado da ligação CDP envia o pedido.

Artigos relacionados