Una sesión de Chromote habla con un proceso de Chrome. Las peticiones del navegador siguen la configuración de proxy de ese proceso, así que establezca los argumentos antes de crearlo:

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)

Esto conserva los argumentos predeterminados existentes de Chromote y añade el oyente HTTP; un extremo de la lista de proxies HTTP puede rellenar la URL de ejemplo para navegación pública permitida. Use una URL socks5 en su lugar solo cuando el extremo hable realmente SOCKS5. Quite un conmutador de proxy existente que entre en conflicto al montar el vector de argumentos.

Realice las operaciones CDP previstas mediante session y después cierre la sesión, el controlador y el navegador propio como parte de la limpieza de la carga de trabajo de R. Una ruta de limpieza de R al estilo try/finally resulta útil si la navegación lanza un error.

En aplicaciones que usan el navegador predeterminado compartido de Chromote, set_chrome_args cambia los valores predeterminados para la construcción futura de navegadores. No reinicia un proceso existente. Crear un objeto Chrome explícito, como arriba, hace visibles la propiedad y el momento de inicio.

El propio entorno http_proxy o https_proxy de R puede configurar un descargador de R sin cambiar este navegador. Del mismo modo, cambiar la ruta de Chrome no configura una llamada API de R separada. Identifique qué lado de la conexión CDP envía la petición.

Artículos relacionados