Haltu vali á proxy í niðurhalinu sjálfu. Þegar httr hefur skilað síðunni skaltu þátta bæti þess svars í stað þess að senda slóðina til annars niðurhals.

Ef gefið er vigur urls og ekki tómt data frame proxies með dálkunum host og heiltölu 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"))
}

Fyrir beiðnir um opinberar síður sem leyfðar eru gegnum opinberar millistöðvar útvegar HTTP-proxylistinn frambjóðendur fyrir host- og port-dálkana. Vísirinn gengur frá fyrstu proxy-röð til þeirrar síðustu og byrjar svo aftur. Hvert kall hefur sína proxy-stillingu; R-ferlið getur haldið áfram.

Síðurnar sem koma út innihalda þáttaðar HTML-skjöl. Beittu rvest::html_elements og nauðsynlegum útdráttaraðgerðum á þessi skjöl. Að senda slóð til read_html myndi í staðinn hefja nýja sókn með eigin netstillingu þeirrar slóðar.

Fyrir staðfest proxy skaltu senda valdan reikning gegnum username- og password-viðföng use_proxy. Annar endapunktur tryggir ekki aðra opinbera útgangs-IP, svo veldu laugina eftir raunverulegri útgangshegðun þjónustunnar.

Tengdir greinar