यस गाइडमा, हामी तपाईंलाई puppeteer-extra
— एउटा पुस्तकालय जसले puppeteer
प्लगइन समर्थनको साथ विस्तार गर्नको लागि र्याप गर्छ भनेर परिचय गराउनेछौं। तपाइँको कठपुतली स्क्रैपिङ परियोजनालाई अर्को स्तरमा लैजान तयार हुनुहोस्! 🚀
puppeteer
वरिपरि एक हल्का र्यापर हो जसले सफा इन्टरफेस मार्फत प्लगइन एकीकरण सक्षम गर्दछ। यद्यपि यो पछिको टोलीद्वारा विकसित गरिएको छैन, यो समुदाय-संचालित परियोजनामा GitHub 📈 मा साप्ताहिक रूपमा हजारौं डाउनलोडहरू र 6k भन्दा बढी ताराहरू छन्।
हेर्नुहोस् — यो स्पष्ट छ कि puppeteer-extra
रिपो वर्षौंदेखि लोकप्रियतामा निरन्तर वृद्धिमा रहेको छ:
User-Agent
हेडरलाई गुमनाम गर्न, गतिशील प्रतिस्थापनको लागि समर्थन सहित।निस्सन्देह, पपेटियर मध्ये एक हो। तर इमानदार बनौं—यसका सीमाहरू छन्, विशेष गरी ब्राउजर फिंगरप्रिन्टिङ र क्याप्चाहरू जस्ता एन्टि-बोट प्रविधिको सामना गर्दा। reCAPTCHA स्वचालनसँग कसरी व्यवहार गर्ने भनेर जान्नको लागि हाम्रो गाइड पढ्नुहोस्।
Puppeteer Extra Puppeteer को लागि एक पावर-अप जस्तै हो, ती प्रमुख कमजोरीहरूलाई सम्बोधन गर्न प्लगइन समर्थन थप्दै। तपाईंको लागि सबै कुरा ओभरराइड वा विस्तार गर्नुको सट्टा, यसले Puppeteer लाई लपेट्छ र तपाईंलाई आवश्यक प्लगइनहरू मात्र दर्ता गर्न दिन्छ। 🦸
puppeteer-extra
: वेब स्क्र्यापिङको लागि सेटअप र प्लगइनहरू npm install puppeteer-extra
⚠️ नोट : puppeteer-extra
लाई काम गर्न puppeteer
आवश्यकता छ, त्यसैले तपाईंको परियोजनामा दुबै प्याकेजहरू स्थापित छन् भनी सुनिश्चित गर्नुहोस्।
त्यसपछि, तपाइँले puppeteer
लाईब्रेरी को सट्टा puppeteer-extra
बाट puppeteer
वस्तु आयात गर्नु पर्छ:
const puppeteer = require("puppeteer-extra") // for ESM users: // const { puppeteer } from "puppeteer-extra"
Puppeteer API मा सबै कुरा उस्तै रहन्छ, तर तपाईंले थोरै अतिरिक्त जादू ✨ प्राप्त गर्नुहुन्छ। puppeteer
वस्तुले अब पपेटियर एक्स्ट्रा प्लगइनहरूमा प्लग गर्नको लागि use()
विधिलाई उजागर गर्दछ।
⚙️ स्थापना :
npm install puppeteer-extra-plugin-stealth
💡 प्रयोग :
const StealthPlugin = require("puppeteer-extra-plugin-stealth") // for ESM users: // import StealthPlugin from "puppeteer-extra-plugin-stealth" puppeteer.use(StealthPlugin())
Puppeteer ब्राउजरलाई विशेष स्रोतहरू लोड गर्नबाट रोक्नको लागि प्लगइन। समर्थित स्रोत प्रकारहरूमा document
, stylesheet
, image
, media
, font
, script
, texttrack
, xhr
, fetch
, eventsource
, websocket
, manifest
, other
समावेश छन्।
⚙️ स्थापना :
npm install puppeteer-extra-plugin-block-resources
💡 प्रयोग :
const BlockResourcesPlugin = require("puppeteer-extra-plugin-block-resources") // for ESM users: // import BlockResourcesPlugin from "puppeteer-extra-plugin-block-resources"
puppeteer.use(BlockResourcesPlugin({ blockedTypes: new Set(["image", "stylesheet"]), }))
puppeteer.use(BlockResourcesPlugin() const browser = await puppeteer.launch() const page = await browser.newPage() blockResourcesPlugin.blockedTypes.add("stylesheet") await page.goto("//www.example.com/", { waitUntil: "domcontentloaded" })
Puppeteer द्वारा नियन्त्रित ब्राउजर द्वारा सेट User-Agent
गुमनाम गर्न प्लगइन। 🎭
यसले तपाईंलाई हेडलेस मोडमा क्रोम प्रयोगकर्ता एजेन्टबाट 'Headless'
स्ट्रिङ हटाउने क्षमता दिन्छ र अनुकूलन प्रकार्य मार्फत प्रयोगकर्ता एजेन्टको गतिशील प्रतिस्थापनलाई समर्थन गर्दछ। हाम्रो कार्यमा हेर्नुहोस्।
⚙️ स्थापना :
npm install puppeteer-extra-plugin-anonymize-ua
💡 प्रयोग :
const AnonymizeUAPlugin = require("puppeteer-extra-plugin-anonymize-ua") // for ESM users: // import AnonymizeUAPlugin from "puppeteer-extra-plugin-anonymize-ua"
puppeteer.use(AnonymizeUAPlugin({ stripHeadless: true, }))
puppeteer.use(AnonymizeUAPlugin({ customFn: (ua) => ua.replace("Chrome", "Chromium")}) }))
प्लेराइटसँग जस्तै , तपाईको Puppeteer स्क्रिप्ट जतिसुकै चपल र अनुकूलित भए पनि, उन्नत एन्टी-बोट प्रणालीहरूले अझै पनि तपाईलाई सुँघ्न र बन्द गर्न सक्छ। तर यो कसरी सम्भव छ? 🤔
puppeteer-extra-stealth-plugin
यसलाई तपाईंको लागि तोड्छ:
कृपया ध्यान दिनुहोस्: म यसलाई एक रोचक बिरालो र मुसा खेल मा एक मैत्री प्रतियोगिता मान्छु। यदि अर्को टोली (👋) हेडलेस क्रोमियम पत्ता लगाउन चाहन्छ भने त्यहाँ अझै पनि त्यसो गर्ने तरिकाहरू छन् (कम्तिमा मैले केही याद गरें, जुन म भविष्यका अद्यावधिकहरूमा ट्याकल गर्नेछु)।हेडलेस क्रोमियम पत्ता लगाउने सबै तरिकाहरू रोक्न यो सम्भवतः असम्भव छ, तर यसलाई यति गाह्रो बनाउन सम्भव हुनुपर्छ कि यो लागत-प्रतिषेधात्मक हुन्छ वा धेरै गलत-सकारात्मकहरू सम्भव हुन ट्रिगर गर्दछ।
त्यसोभए, जबकि पपेटियर एक्स्ट्राले म्याट्रिक्समा नियो जस्ता धेरै आधारभूत बोट पत्ता लगाउन सक्छ, यसले पक्कै पनि क्लाउडफ्लेयरलाई बाइपास गर्न सक्दैन। पक्का, तपाईंले गर्न सक्नुहुन्छ, तर त्यो पनि पर्याप्त नहुन सक्छ।
पपेटियर प्राविधिक संसारमा सबैभन्दा व्यापक रूपमा प्रयोग हुने ब्राउजर स्वचालन उपकरणहरू मध्ये एक हो, तर सुपरहीरोहरूको पनि सीमा हुन्छ। समुदायले puppeteer-extra
को साथमा प्रवेश गर्यो, एउटा प्याकेज जसले Puppeteer लाई अनुकूलन प्लगइनहरू मार्फत केही गम्भीर रूपमा नयाँ क्षमताहरू दिन्छ।