चालू रखें और जानें 'क्या बदला' बताने वाला वेब कलेक्टर web_harvester (Chrome एक्सटेंशन + Python CLI)
(chromewebstore.google.com)कई बार crawler बनाते हुए एक बात हमेशा अटकती रही। ज़्यादातर टूल एक बार scrape करके खत्म हो जाते हैं, इसलिए असल में जो जानना होता है—'कल की तुलना में क्या बदला?' (कीमत में गिरावट, नए प्रोडक्ट, रैंकिंग बदलाव, रिव्यू बदलाव)—उसे हर बार खुद जाकर फिर से तुलना करनी पड़ती थी.
web_harvester को मैंने चालू छोड़ देने पर लगातार चलते हुए उन्हीं 'बदलावों' की सूचना देने पर केंद्रित किया है। वही आइटम तारीख़ के हिसाब से Google Sheets/CSV/Excel/SQL में जमा होते रहते हैं, इसलिए सिर्फ़ एक लाइन नहीं बल्कि पूरा ट्रेंड बचा रहता है। और जब कोई अर्थपूर्ण बदलाव होता है, तो Slack/Discord webhook या ईमेल से तुरंत सूचना मिल जाती है। कलेक्शन इंटरवल आप खुद सेट कर सकते हैं, और डिफॉल्ट रूप से इसे low-frequency पर रखा गया है।
नो-कोड पहलू पर भी ध्यान दिया गया है। field auto-discovery पेज पर value candidates (जैसे नाम, कीमत आदि) ढूँढकर दिखाता है, और सिर्फ़ checkbox चुनते ही mapping हो जाती है, यानी coding शून्य है।
तकनीकी रूप से सबसे मज़ेदार हिस्सा recon engine था। इस साइट में JSON-LD है क्या, सब कुछ __NEXT_DATA__ में है क्या, या आखिरकार DOM scrape करना पड़ेगा—हर बार developer tools खोलकर हाथ से जाँचना थकाऊ लगने लगा था, इसलिए उस निर्णय को कोड में बदलने की कोशिश की। एक sample page लेकर यह 5 मोड (JSON-LD · window variables (__NEXT_DATA__ आदि) · DOM repetition · Google af-data/af-one) में अपने-आप diagnosis करता है, और सबसे सस्ता तथा UI बदलावों से कम टूटने वाला extraction path चुनता है। SSR या document में embedded JSON के साथ आने वाली साइटों के लिए यह server-side पर हल्के तरीके से काम करता है, और dynamic या login पेजों के लिए आपके अपने Chrome session (real browser) से पेज लेकर वही extraction code चलाता है। extraction core (field mapping · type conversion · item extraction) को offline unit tests से स्थिर रखा गया है, इसलिए refactoring कम डरावना लगता है।
डिज़ाइन सिद्धांत शुरुआत से साफ़ रखे गए हैं: public data · अपनी permission/session · low-frequency · robots का सम्मान। CAPTCHA/proxy bypass नहीं किया जाता।
इसका रूप Chrome MV3 extension + Python CLI hybrid है। मैं इसे अकेले बना और चला रहा हूँ, इसलिए अभी इसमें कुछ खुरदरे हिस्से हो सकते हैं। आप इसे सीधे इस्तेमाल करके अगर ऐसा feedback दें कि 'recon diagnosis results में यह भी होना चाहिए' या 'ऐसी change alerts भी हों तो अच्छा होगा', तो मैं सच में आभारी रहूँगा।
मुफ़्त इंस्टॉल (Chrome Web Store) से तुरंत आज़माएँ — harvesting · field exploration · CSV/Sheets export मुफ़्त (Basic): https://chromewebstore.google.com/detail/…
मानवरहित scheduling · change alerts Pro में हैं (one-time payment · लॉन्च 20% अपने-आप लागू): https://joktnova.gumroad.com/l/figvr/LAUNCH20
public data · अपनी permission · low-frequency · robots का सम्मान · CAPTCHA/proxy bypass नहीं।
अभी कोई टिप्पणी नहीं है.