R හි httr තුළ ප්රොක්සි කරකවා බාගත් HTML විශ්ලේෂණය කිරීම
සෑම httr ඉල්ලීමකදීම ප්රොක්සි පේළිය මාරු කර බාගත් බයිට xml2 සහ rvest වෙත යවන්න.
ප්රොක්සි තේරීම බාගැනීමේ ක්රියාවලියේම තබන්න. httr පිටුව ආපසු දුන් පසු URL තවත් බාගන්නෙකුට දීම වෙනුවට එම ප්රතිචාරයේ බයිට විශ්ලේෂණය කරන්න.
urls දෛශිකයක් සහ host සහ පූර්ණ සංඛ්යා port තීරු සහිත හිස් නොවන data frame proxies එකක් දී ඇත්නම්:
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 තර්ක හරහා යවන්න. වෙනත් endpoint එකක් වෙනත් පොදු පිටවන IP එකක් සහතික නොකරයි, එබැවින් සේවාවේ සැබෑ පිටවන හැසිරීම අනුව තටාකය තෝරන්න.