Прокси таңдауын жүктеу операциясында ұстаңыз. httr бетті қайтарғаннан кейін URL-ді басқа жүктеушіге берудің орнына сол жауаптың байттарын талдаңыз.

urls векторы және host пен бүтін port бағандары бар бос емес proxies data frame берілген:

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"))
}

Қоғамдық делдалдар арқылы рұқсат етілген қоғамдық беттерге сұраулар үшін HTTP проксилер тізімі host және port бағандарына үміткерлер ұсынады. Индекс бірінші прокси жолынан соңғысына дейін айналып, қайтадан басына оралады. Әр шақырудың өз прокси конфигурациясы бар; R процесі жұмысын жалғастыра алады.

Алынған беттерде талданған HTML құжаттары бар. Оларға rvest::html_elements пен қажетті шығару функцияларын қолданыңыз. Оның орнына read_html-ге URL беру сол жолдың өз желілік конфигурациясымен жаңа жүктеуді бастайды.

Аутентификацияланған проксилер үшін таңдалған тіркелгіні use_proxy-дің username және password аргументтері арқылы беріңіз. Басқа шеткі нүкте басқа қоғамдық шығу IP-ін кепілдендірмейді, сондықтан пулды қызметтің нақты шығу мінез-құлқына қарай таңдаңыз.

Қатысты мақалалар