Prokside rotatsioon R-i httr-is ja alla laaditud HTML-i parsija
Vaheta proksiridu iga httr-päringu järel ning anna alla laaditud baidid xml2-le ja rvest-ile.
Hoia proksi valik allalaadimise toimingus. Kui httr on lehe tagastanud, parsige selle vastuse baite, selle asemel et anda URL teisele allalaadijale.
Kui on antud vektor urls ja mittetühi data frame proxies veergudega host ja täisarvuline port:
pages <- vector("list", length(urls))
stopifnot(nrow(proxies) > 0L)
for (i in seq_along(urls)) {
row <- ((i - 1L) %% nrow(proxies)) + 1L
response <- httr::GET(
urls[[i]],
httr::use_proxy(proxies$host[[row]], proxies$port[[row]]),
httr::timeout(30)
)
httr::stop_for_status(response)
pages[[i]] <- xml2::read_html(httr::content(response, as = "raw"))
}
Avalike lehtede päringute jaoks, mis on lubatud avalike vahendajate kaudu, pakub HTTP-prokside loend kandidaate veergude host ja port jaoks. Indeks liigub esimesest proksireast viimaseni ja pöördub seejärel algusesse tagasi. Igal kutsungil on oma proksikonfiguratsioon; R-protsess saab töötamist jätkata.
Tulemuseks olevad lehed sisaldavad parsitud HTML-dokumente. Rakendage nendele dokumentidele rvest::html_elements ja vajalikud ekstraktimisfunktsioonid. URL-i andmine read_html-ile käivitaks hoopis uue toomise selle tee enda võrgukonfiguratsiooniga.
Autenditud prokside puhul edastage valitud konto use_proxy argumentide username ja password kaudu. Teine lõpp-punkt ei taga teist avalikku väljund-IP-d, seega valige bassein teenuse tegeliku väljundkäitumise järgi.