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 आर्ग्युमेंट्सद्वारे पाठवा. वेगळा एंडपॉइंट वेगळा सार्वजनिक एक्झिट IP हमी देत नाही, म्हणून सेवेच्या प्रत्यक्ष एक्झिट वर्तनानुसार पूल निवडा.