Skifti millum proxy í httr í R og greina tað niðurhalaðu HTML
Skifti millum proxy-raðir fyri hvørja httr-fyrirspurn og send tær niðurhalaðu bytini til xml2 og rvest.
Halt proxy-valið á niðurhalingsøkinum. Tá httr hevur latið síðuna frá sær, greina bytini í tí svari í staðin fyri at senda URL til annan niðurhalara.
Givið ein vektor urls og eitt ikki tómt data frame proxies við host- og heiltals-port-støðum:
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"))
}
Fyri fyrirspurnir til almennar síður, sum eru loyvdar gjøgnum almennar millumgongur, veitir HTTP-proxy-listin evnar til host- og port-støðurnar. Vísarin gongur frá fyrstu proxy-rað til ta seinastu og byrjar so umaftur. Hvørt kall hevur sína egnu proxy-stilling; R-gongdin kann halda fram.
Tær úrslitandi síðurnar innihalda greinað HTML-skjøl. Nýt rvest::html_elements og teir neyðugu úttaksfunktiónirnar á hesi skjøl. At senda eina URL til read_html fór heldur at byrja eina nýggja heinta við egnu netstilling síns leiðar.
Fyri váttaðar proxy, send tann valda kontuna gjøgnum username- og password-argumentini hjá use_proxy. Ein annar endapunktur tryggjar ikki eina aðra almenna útgangs-IP, so vel hylkið eftir veruligu útgangsatferð tænastunnar.