រក្សាការជ្រើស proxy នៅលើប្រតិបត្តិការទាញយក។ បន្ទាប់ពី httr ត្រឡប់ទំព័រមក សូមញែកបៃនៃចម្លើយនោះ ជំនួសឱ្យការបញ្ជូន URL ទៅកម្មវិធីទាញយកផ្សេង។

បានផ្តល់ vector urls និង data frame proxies មិនទទេ ដែលមានជួរឈរ host និង 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"))
}

សម្រាប់សំណើទំព័រសាធារណៈដែលអនុញ្ញាតតាមអន្តរការីសាធារណៈ បញ្ជី proxy HTTP ផ្តល់បេក្ខជនសម្រាប់ជួរឈរ host និង port។ សន្ទស្សន៍បង្វិលពីជួរ proxy ដំបូងដល់ចុងក្រោយ ហើយត្រឡប់ទៅដើមវិញ។ ការហៅនីមួយៗមានការកំណត់ proxy ផ្ទាល់ខ្លួន; ដំណើរការ R អាចបន្តដំណើរការ។

ទំព័រលទ្ធផលមានឯកសារ HTML ដែលបានញែក។ អនុវត្ត rvest::html_elements និងមុខងារស្រង់ចេញចាំបាច់លើឯកសារទាំងនោះ។ ការបញ្ជូន URL ទៅ read_html ជំនួសវិញនឹងចាប់ផ្តើមការទាញយកថ្មីជាមួយការកំណត់បណ្តាញផ្ទាល់ខ្លួនរបស់ផ្លូវនោះ។

សម្រាប់ proxy ដែលមានការផ្ទៀងផ្ទាត់ បញ្ជូនគណនីដែលបានជ្រើសតាមអាគុយម៉ង់ username និង password របស់ use_proxy។ ចំណុចបញ្ចប់ផ្សេងមិនធានា IP ចេញសាធារណៈ ផ្សេងទេ ដូច្នេះជ្រើសអាងតាមអាកប្បកិរិយាចេញពិតប្រាកដរបស់សេវា។

អត្ថបទពាក់ព័ន្ធ