Una sessione Chromote comunica con un processo Chrome. Le richieste del browser seguono la configurazione proxy di quel processo, quindi impostate gli argomenti prima di 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)

Ciò conserva gli argomenti predefiniti esistenti di Chromote e aggiunge il listener HTTP; un endpoint dall'elenco di proxy HTTP può riempire l'URL di esempio per la navigazione pubblica consentita. Usate invece un URL socks5 solo quando l'endpoint parla davvero SOCKS5. Rimuovete un interruttore proxy esistente in conflitto quando assemblate il vettore di argomenti.

Eseguite le operazioni CDP previste tramite session, poi chiudete la sessione, il controller e il browser di proprietà come parte della pulizia del carico di lavoro R. Un percorso di pulizia R in stile try/finally è utile se la navigazione solleva un errore.

Per le applicazioni che usano il browser predefinito condiviso di Chromote, set_chrome_args cambia le impostazioni predefinite per la futura costruzione del browser. Non riavvia un processo esistente. Creare un oggetto Chrome esplicito, come sopra, rende visibili proprietà e momento di avvio.

L'ambiente http_proxy o https_proxy di R può configurare un downloader R senza cambiare questo browser. Allo stesso modo, cambiare la rotta di Chrome non configura una chiamata API R separata. Identificate quale lato della connessione CDP invia la richiesta.

Articoli correlati