Proxyak txandakatzea R-ren httr-en eta deskargatutako HTML-a analizatzea
Txandakatu proxy errenkadak httr eskaera bakoitzean eta pasa deskargatutako byteak xml2 eta rvest-i.
Mantendu proxy hautaketa deskarga-eragiketan. Httr-ek orria itzuli ondoren, analizatu erantzun horren byteak, URL beste deskargatzaile bati pasa beharrean.
Urls bektorea eta host eta port osoko zutabeak dituen proxies data frame ez-hutsa emanik:
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"))
}
Bitartekari publikoen bidez baimendutako orrialde publikoen eskaeretarako, HTTP proxy zerrendak hautagaiak eskaintzen ditu host eta port zutabeetarako. Indizea lehen proxy errenkadatik azkenera arte ibiltzen da eta hasierara itzultzen da. Deialdi bakoitzak bere proxy konfigurazioa du; R prozesuak lanean jarrai dezake.
Lortutako orrialdeek analizatutako HTML dokumentuak dituzte. Aplikatu rvest::html_elements eta beharrezko erauzketa funtzioak dokumentu horiei. URL bat read_html-i pasatzeak bide horren sare-konfigurazio propioarekin berreskurapen berria hasiko luke.
Autentifikatutako proxyetarako, pasa hautatutako kontua use_proxy-ren username eta password argumentuen bidez. Beste endpoint batek ez du irteerako IP publiko ezberdina bermatzen, beraz aukeratu multzoa zerbitzuaren benetako irteera-portaeraren arabera.