Ruby में वेब स्क्रैपिंग के लिए प्लेराइट का उपयोग कैसे करें

Ethan Collins
Pattern Recognition Specialist
08-Oct-2024
वेब स्क्रैपिंग वेबसाइटों से डेटा एकत्र करने के लिए एक आवश्यक कौशल बन गया है, चाहे वह बाजार विश्लेषण, शैक्षणिक शोध या कोई डेटा-संचालित प्रोजेक्ट हो। प्लेराइट एक उत्कृष्ट ब्राउज़र ऑटोमेशन टूल है जिसका उपयोग वेबसाइटों को कुशलतापूर्वक स्क्रैप करने के लिए किया जा सकता है, जो रूबी सहित कई भाषाओं के लिए समर्थन प्रदान करता है। इस गाइड में, हम उदाहरण के रूप में quotes.toscrape.com का उपयोग करके रूबी में प्लेराइट को कैसे सेट अप करें और उपयोग करें, इस पर चर्चा करेंगे।
प्लेराइट क्या है?
प्लेराइट वेब परीक्षण के लिए एक आधुनिक स्वचालन ढांचा है, जो सेलेनियम के समान है लेकिन तेज निष्पादन और क्रोमियम, फ़ायरफ़ॉक्स और वेबकिट जैसे सभी आधुनिक ब्राउज़रों के लिए समर्थन के साथ। यह हेडलेस और हेडेड स्क्रैपिंग, पेज नेविगेशन, फॉर्म के साथ इंटरैक्ट करने और बहुत कुछ के लिए शक्तिशाली ब्राउज़र ऑटोमेशन टूल प्रदान करता है।
रूबी के साथ प्लेराइट का उपयोग क्यों करें?
रूबी एक लोकप्रिय भाषा है जो अपनी सादगी और डेवलपर के अनुकूल सिंटैक्स के लिए जानी जाती है। रूबी के साथ प्लेराइट का उपयोग करके, आप रूबी के साफ और आसानी से पढ़ने योग्य कोड संरचना को बनाए रखते हुए आधुनिक ब्राउज़र ऑटोमेशन की शक्ति का लाभ उठा सकते हैं। प्लेराइट अपनी गति, अंतर्निहित प्रतीक्षा-के लिए स्थितियों और जावास्क्रिप्ट द्वारा लोड की गई गतिशील सामग्री से निपटने की क्षमता के कारण वेब स्क्रैपिंग के लिए आदर्श है।
रूबी में प्लेराइट सेट करना
रूबी में प्लेराइट के साथ स्क्रैपिंग शुरू करने के लिए, आपको कुछ चीजें सेट करनी होंगी:
1. रूबी इंस्टॉल करें
सुनिश्चित करें कि आपकी मशीन पर रूबी स्थापित है। आप अपने टर्मिनल में निम्न कमांड चलाकर इसे जांच सकते हैं:
bash
ruby -v
यदि रूबी स्थापित नहीं है, तो आप इसे rbenv के माध्यम से या सीधे रूबी की आधिकारिक साइट से इंस्टॉल कर सकते हैं।
2. प्लेराइट जेम इंस्टॉल करें
अगला, आपको playwright-ruby-client
जेम इंस्टॉल करना होगा। यह जेम रूबी के लिए प्लेराइट बाइंडिंग प्रदान करता है, जिससे आप ब्राउज़र के साथ प्रोग्रामेटिक रूप से इंटरैक्ट कर सकते हैं।
जेम इंस्टॉल करने के लिए निम्न कमांड चलाएँ:
bash
gem install playwright-ruby-client
3. ब्राउज़र इंस्टॉल करें
जेम इंस्टॉल करने के बाद, आपको प्लेराइट द्वारा समर्थित ब्राउज़र इंस्टॉल करने की आवश्यकता है। निम्न कमांड चलाएँ:
bash
playwright install
यह प्लेराइट के साथ उपयोग के लिए क्रोमियम, फ़ायरफ़ॉक्स और वेबकिट डाउनलोड करेगा।
स्क्रैपिंग उदाहरण: एक वेबसाइट से उद्धरण स्क्रैपिंग
आइए एक सरल स्क्रैपिंग उदाहरण में उतरें जहां हम quotes.toscrape.com से उद्धरण निकालेंगे। वेबसाइट में लेखकों के साथ प्रसिद्ध उद्धरण शामिल हैं, जो स्क्रैपिंग अभ्यास के लिए एक बढ़िया संसाधन है।
चरण 1: प्लेराइट को इनिशियलाइज़ करें और एक ब्राउज़र लॉन्च करें
सबसे पहले, आपको प्लेराइट को इनिशियलाइज़ करना होगा और एक ब्राउज़र (इस मामले में क्रोमियम) लॉन्च करना होगा। ऐसा करने का तरीका यहां दिया गया है:
ruby
require 'playwright-ruby-client'
Playwright.create(playwright_cli_executable_path: '/path/to/cli') do |playwright|
browser = playwright.chromium.launch(headless: true) # Launch headless browser
page = browser.new_page
page.goto('http://quotes.toscrape.com/')
puts "Page title: #{page.title}" # Optional: Print page title to verify it's loaded correctly
# Close the browser
browser.close
end
इस स्निपेट में, प्लेराइट एक हेडलेस क्रोमियम ब्राउज़र में quotes.toscrape.com पेज खोलता है।
चरण 2: उद्धरण और लेखक स्क्रैप करें
अब, हम पेज से उद्धरण और उनके लेखकों को स्क्रैप करना चाहते हैं। ऐसा करने के लिए, हमें पेज संरचना का निरीक्षण करने और उद्धरण और लेखकों वाले तत्वों की पहचान करने की आवश्यकता है।
यहां वह कोड दिया गया है जो उद्धरण और उनके संबंधित लेखकों को निकालता है:
ruby
require 'playwright-ruby-client'
Playwright.create(playwright_cli_executable_path: '/path/to/cli') do |playwright|
browser = playwright.chromium.launch(headless: true)
page = browser.new_page
page.goto('http://quotes.toscrape.com/')
# Find all quote elements
quotes = page.query_selector_all('.quote')
quotes.each do |quote|
text = quote.query_selector('.text').text_content.strip
author = quote.query_selector('.author').text_content.strip
puts "Quote: #{text} - Author: #{author}"
end
browser.close
end
यह स्क्रिप्ट वेबसाइट पर जाने के लिए प्लेराइट का उपयोग करता है, उद्धरण पाठ और लेखक निकालता है, और फिर उन्हें कंसोल में प्रिंट करता है। .quote
क्लास प्रत्येक उद्धरण ब्लॉक को लक्षित करता है, और हम प्रासंगिक जानकारी निकालने के लिए .text
और .author
का उपयोग करते हैं।
चरण 3: पेजिनेशन को हैंडल करें
उद्धरण वेबसाइट पेजिनेशन का उपयोग करती है, इसलिए आप केवल पहले पेज को ही नहीं, बल्कि सभी पेजों को स्क्रैप करना चाह सकते हैं। पेजिनेशन को कैसे हैंडल करें, इसके लिए यहां बताया गया है:
ruby
require 'playwright-ruby-client'
Playwright.create(playwright_cli_executable_path: '/path/to/cli') do |playwright|
browser = playwright.chromium.launch(headless: true)
page = browser.new_page
page.goto('http://quotes.toscrape.com/')
loop do
quotes = page.query_selector_all('.quote')
quotes.each do |quote|
text = quote.query_selector('.text').text_content.strip
author = quote.query_selector('.author').text_content.strip
puts "Quote: #{text} - Author: #{author}"
end
next_button = page.query_selector('li.next > a')
break unless next_button # Exit loop if no next page
next_button.click
page.wait_for_load_state('load') # Wait for the next page to load
end
browser.close
end
यह कोड "अगला" बटन पर क्लिक करके प्रत्येक पेज के माध्यम से लूप करता है जब तक कि और कोई पेज नहीं होता। यह हर पेज से उद्धरण और लेखकों को निकालना जारी रखता है।
चरण-दर-चरण मार्गदर्शिका: रूबी में प्लेराइट और कैपसॉल्वर का उपयोग करके एचकैप्चा को हल करना
यह मार्गदर्शिका बताती है कि रूबी में प्लेराइट के साथ कैपसॉल्वर ब्राउज़र एक्सटेंशन का उपयोग करके एचकैप्चा / रीकैप्चा को कैसे हल किया जाए। कैपसॉल्वर कैप्चा को सीधे हल करने के लिए अतिरिक्त कोड लिखे बिना उन्हें संभालने का एक आसान तरीका प्रदान करता है।
चरण 1: प्लेराइट और निर्भरताएँ स्थापित करें
सबसे पहले, सुनिश्चित करें कि प्लेराइट स्थापित है:
bash
gem install playwright-ruby-client
चरण 2: कैपसॉल्वर एक्सटेंशन डाउनलोड करें और कॉन्फ़िगर करें
-
कैपसॉल्वर एक्सटेंशन डाउनलोड करें:
- कैपसॉल्वर गिटहब रिलीज पेज से कैपसॉल्वर एक्सटेंशन डाउनलोड करें।
- एक्सटेंशन को आपके प्रोजेक्ट के रूट में एक निर्देशिका में अनज़िप करें, जैसे
./CapSolver.Browser.Extension
।
-
एक्सटेंशन को कॉन्फ़िगर करें:
- कैपसॉल्वर एक्सटेंशन निर्देशिका में कॉन्फ़िगरेशन फ़ाइल
./assets/config.json
का पता लगाएँ। - विकल्प
enabledForcaptcha
कोtrue
पर सेट करें और स्वचालित समाधान के लिएcaptchaMode
कोtoken
पर समायोजित करें।
उदाहरण
config.json
:json{ "enabledForcaptcha": true, "captchaMode": "token" // other settings remain the same }
- कैपसॉल्वर एक्सटेंशन निर्देशिका में कॉन्फ़िगरेशन फ़ाइल
चरण 3: कैपसॉल्वर एक्सटेंशन के साथ प्लेराइट सेटअप करें
यहां बताया गया है कि आप कैपसॉल्वर एक्सटेंशन को प्लेराइट ब्राउज़र में कैसे लोड कर सकते हैं:
-
प्लेराइट की आवश्यकता है और पथ सेट करें:
rubyrequire 'playwright-ruby-client' require 'fileutils' # Get the path for the CapSolver extension directory extension_path = File.join(Dir.pwd, 'CapSolver.Browser.Extension')
-
कैपसॉल्वर एक्सटेंशन के साथ ब्राउज़र लॉन्च करें:
प्लेराइट का उपयोग करके कैपसॉल्वर एक्सटेंशन लोड किए गए क्रोमियम ब्राउज़र को लॉन्च करें।rubyPlaywright.create(playwright_cli_executable_path: '/path/to/cli') do |playwright| browser = playwright.chromium.launch_persistent_context('', { headless: false, # Run with a visible browser for debugging args: [ "--disable-extensions-except=#{extension_path}", "--load-extension=#{extension_path}" ] }) page = browser.new_page page.goto('https://quotes.toscrape.com/') # Replace with the target URL # Locate the captcha checkbox or frame and interact with it page.wait_for_selector('iframe', state: 'visible') # Adjust the selector to target captcha iframe page.click('iframe') # Adjust the click event for your captcha's interaction # Additional steps can be added based on the site’s requirements browser.close end
रीकैप्चा को हल करने के लिए चरण एचकैप्चा के समान हैं।
बोनस कोड
शीर्ष कैप्चा समाधानों के लिए अपना बोनस कोड कैपसॉल्वर पर प्राप्त करें: scrape। इसे रिडीम करने के बाद, आपको प्रत्येक रिचार्ज के बाद 5% अतिरिक्त बोनस मिलेगा, असीमित बार।

निष्कर्ष
वेब स्क्रैपिंग के लिए रूबी में प्लेराइट का उपयोग करने से वेबसाइटों से डेटा निकालने का एक कुशल और शक्तिशाली तरीका मिलता है। चाहे वह सरल स्थिर सामग्री हो या गतिशील रूप से लोड किए गए पेज, प्लेराइट दोनों को आसानी से संभालता है। इस ट्यूटोरियल में, हमने एक वेबसाइट से उद्धरण और लेखकों को स्क्रैप किया, लेकिन प्लेराइट बहुत कुछ कर सकता है - जैसे फॉर्म के साथ इंटरैक्ट करना, स्क्रीनशॉट लेना या ब्राउज़र-आधारित परीक्षण चलाना।
यदि आप रूबी में वेब स्क्रैपिंग के लिए एक मजबूत उपकरण की तलाश कर रहे हैं, तो प्लेराइट एक बेहतरीन विकल्प है। इसे सेट अप करना आसान है, तेज़ है, और विभिन्न स्क्रैपिंग कार्यों को संभालने के लिए काफी लचीला है।
अनुपालन अस्वीकरण: इस ब्लॉग पर प्रदान की गई जानकारी केवल सूचनात्मक उद्देश्यों के लिए है। CapSolver सभी लागू कानूनों और विनियमों का पालन करने के लिए प्रतिबद्ध है। CapSolver नेटवर्क का उपयोग अवैध, धोखाधड़ी या दुरुपयोग करने वाली गतिविधियों के लिए करना सख्त वर्जित है और इसकी जांच की जाएगी। हमारे कैप्चा समाधान उपयोगकर्ता अनुभव को बेहतर बनाने के साथ-साथ सार्वजनिक डेटा क्रॉलिंग के दौरान कैप्चा कठिनाइयों को हल करने में 100% अनुपालन सुनिश्चित करते हैं। हम अपनी सेवाओं के जिम्मेदार उपयोग की प्रोत्साहना करते हैं। अधिक जानकारी के लिए, कृपया हमारी सेवा की शर्तें और गोपनीयता नीति पर जाएं।
अधिक

वेब स्क्रैपिंग में इमेज CAPTCHAs को कैसे हल करें: 2025 के लिए एक संपूर्ण गाइड
2025 में CapSolver के साथ प्रभावी ढंग से इमेज CAPTCHA को हल करना सीखें

Rajinder Singh
23-Jan-2025

reCAPTCHA पहचान क्या है? शुरुआती लोगों के लिए एक मार्गदर्शिका
reCAPTCHA इमेज ग्रिड से जूझ रहे हैं? जानें कि कैसे Capsolver का AI-संचालित पहचान 'सभी का चयन करें' चुनौतियों को तुरंत हल करता है। API एकीकरण, ब्राउज़र एक्सटेंशन और 95%+ सटीकता के साथ CAPTCHA को स्वचालित करने के लिए प्रो टिप्स जानें

Rajinder Singh
23-Jan-2025

2025 में वेब स्क्रैपिंग करते समय Cloudflare चुनौती को कैसे बायपास करें
2025 में निर्बाध वेब स्क्रैपिंग के लिए Cloudflare Challenge और Turnstile को कैसे बायपास करें, यह जानें। Capsolver इंटीग्रेशन, TLS फ़िंगरप्रिंटिंग टिप्स और CAPTCHA नर्क से बचने के लिए सामान्य त्रुटियों के समाधान खोजें। समय बचाएँ और अपने डेटा निष्कर्षण को स्केल करें।

Emma Foster
23-Jan-2025

एक्सटेंशन द्वारा क्लाउडफ्लेयर टर्नस्टाइल CAPTCHA कैसे हल करें
Capsolver के एक्सटेंशन से Cloudflare Turnstile CAPTCHA को कैसे बायपास करें, यह जानें। Chrome, Firefox और Puppeteer जैसे ऑटोमेशन टूल्स के लिए इंस्टॉलेशन गाइड।

Ethan Collins
23-Jan-2025

reCAPTCHA Site Key क्या है और यह कैसे प्राप्त करें?
reCAPTCHA Site Key को मैन्युअली या Capsolver जैसे टूल्स से कैसे ढूँढें, सामान्य समस्याओं को कैसे ठीक करें और डेवलपर्स और वेब स्क्रैपिंग के लिए CAPTCHA सॉल्विंग को कैसे ऑटोमेट करें, यह जानें।

Anh Tuan
23-Jan-2025

2025 में reCAPTCHA पहचान के लिए शीर्ष 5 कैप्चा सॉल्वर
2025 के शीर्ष 5 CAPTCHA सॉल्वरों का अन्वेषण करें, जिसमें तेज़ reCAPTCHA पहचान के लिए AI-संचालित CapSolver भी शामिल है। यहाँ गति, मूल्य और सटीकता की तुलना करें

Anh Tuan
23-Jan-2025