अगर आप बड़ी कंपनियों की तरह Web Scraping करना चाहते हैं (2021)
(incolumitas.com)Here is a summary of the key points from the article in Korean, formatted as a markdown bullet list:
बड़े पैमाने की scraping infrastructure बनाना
- AWS Lambda पर Headless Chrome चलाकर हर हफ्ते Google SERP के लाखों results scrape किए जाते हैं
- Lambda function को 3 बार invoke करने पर नया public IP मिल सकता है
- 1000 Lambda functions को एक साथ invoke करने पर लगभग 250 public IP इस्तेमाल किए जा सकते हैं
- 16 regions का उपयोग करने पर लगभग 4000 public IP addresses इस्तेमाल किए जा सकते हैं
- लेकिन यह तरीका सिर्फ Google, Bing, Amazon जैसी sites पर काम करता है. DataDome, Akamai, Imperva जैसे anti-bot solutions इस्तेमाल करने वाली sites पर यह काम नहीं करता
- Anti-bot solutions browser fingerprinting, lie detection, और इंसानों से अलग behavior detection जैसी कई techniques इस्तेमाल करते हैं
- Bot detection से बचना मुश्किल होने की वजह यह है कि ज़्यादातर setups Docker या Kubernetes के साथ cloud पर चलते हैं
ऐसा scalable scraping infrastructure का प्रस्ताव जिसे detect करना मुश्किल हो
- 5 manufacturers से 500 सस्ते Android devices खरीदें
- सस्ते data plans इस्तेमाल करें, और DeviceFarmer/stf से devices को control करें
- London, Paris, Boston, Frankfurt, LA जैसे 5 बड़े शहरों में 100-100 devices तैनात करें
- हल्का Android Go install करें, और हर 5 मिनट में airplane mode off/on करके IP address बदलें
- 4G/5G/LTE के mobile IP को block करना संभव नहीं है. बहुत से users इन्हें share करते हैं, इसलिए Instagram भी LA के 2 लाख लोगों को block नहीं कर सकता
- Device orientation, movement जैसे events को kernel level पर manipulate करने की ज़रूरत है
सुधार का विकल्प: Android emulation
- Android-x86 on VirtualBox, Bluestacks, Android Studio जैसे emulators का उपयोग
- लेकिन emulation detection की कई techniques मौजूद हैं (browser-based red pill, adb port scan, ad ID detection, social login detection आदि)
- 4G dongles को server से जोड़कर Android emulator में सीधे इस्तेमाल करें
- 5 बड़े शहरों में से हर एक में 50 dongles से जुड़े शक्तिशाली scraping server 1-1 तैनात करें
- हर server पर 50~100 Android emulators चलाएँ
- एक simple command-control server से 5 scraping stations को coordinate करें
GN⁺ की राय
- असली devices का इस्तेमाल करने पर management cost ज़्यादा और scalability सीमित लगती है. Emulator का उपयोग एक व्यावहारिक विकल्प हो सकता है.
- लेकिन emulator detection techniques भी लगातार आगे बढ़ रही हैं, इसलिए सिर्फ emulator इस्तेमाल करना सुरक्षित होगा ऐसा नहीं लगता. लगातार updates और improvements की ज़रूरत होगी.
- 4G/5G mobile IP का उपयोग एक अच्छा विचार है. लेकिन telecom carrier किसी खास device को block करे या plan बदल दे, इस संभावना को भी नज़रअंदाज़ नहीं किया जा सकता.
- Datacenter IP से बचने के अलावा, इंसानों जैसे behavior patterns बनाना भी bot detection से बचने में मददगार हो सकता है. Automation के ज़रिए बड़े पैमाने पर collection करने के बजाय सीमित concurrency के साथ धीरे-धीरे collect करने का तरीका भी विचार करने लायक है.
- Multilogin या GoLogin जैसे commercial anti-detection browsers का उपयोग भी विचार करने लायक है. हालांकि, license cost की समस्या है.
अभी कोई टिप्पणी नहीं है.