Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

स्क्रैपी स्पाइडर को स्क्रैपिंग हब पर तैनात करना

स्क्रैपी स्पाइडर

स्क्रेपी स्पाइडर एक ऐसा वर्ग है जो वेबसाइट के लिंक का अनुसरण करने और वेबपेजों से जानकारी निकालने की सुविधा प्रदान करता है।

यह मुख्य वर्ग है जिससे अन्य मकड़ियों को विरासत में मिलना चाहिए।

स्क्रैपिंगहब

स्क्रैपिंगहब स्क्रेपी स्पाइडर चलाने के लिए एक ओपन सोर्स एप्लिकेशन है। स्क्रैपिंगहब वेब सामग्री को कुछ उपयोगी डेटा या जानकारी में बदल देता है। यह हमें जटिल वेबपृष्ठों के लिए भी, वेबपृष्ठों से डेटा निकालने की अनुमति देता है।

हम स्क्रैपिंगहब का उपयोग क्लाउड पर स्क्रैपी स्पाइडर को तैनात करने और इसे निष्पादित करने के लिए करने जा रहे हैं।

स्क्रैपिंगहब पर मकड़ियों को तैनात करने के चरण -

चरण1 -

एक स्क्रैपी प्रोजेक्ट बनाएं -

स्क्रैपी स्थापित करने के बाद, बस अपने टर्मिनल में निम्न कमांड चलाएँ -

$scrapy startproject <project_name>

अपनी निर्देशिका को अपने नए प्रोजेक्ट (project_name) में बदलें।

चरण 2 -

अपनी लक्षित वेबसाइट के लिए एक स्क्रैपी स्पाइडर लिखें, आइए एक सामान्य वेबसाइट "quotes.toscrape.com" लें।

नीचे मेरी बहुत ही सरल स्क्रैपी स्पाइडर है -

कोड -

#import scrapy library
import scrapy

class AllSpider(scrapy.Spider):

crawled = set()
#Spider name
name = 'all'
#starting url
start_urls = ['https://www.tutorialspoint.com/']

def __init__(self):
   self.links = []

def parse(self, response):
   self.links.append(response.url)
   for href in response.css('a::attr(href)'):
      yield response.follow(href, self.parse)

चरण 3 -

अपना स्पाइडर चलाएं और आउटपुट को अपनी लिंक्स.जेसन फ़ाइल में सहेजें -

उपरोक्त कोड को निष्पादित करने के बाद, आप सभी लिंक्स को स्क्रैप कर पाएंगे और उसे लिंक्स.जेसन फ़ाइल के अंदर सहेज सकेंगे। यह एक लंबी प्रक्रिया नहीं हो सकती है, लेकिन इसे लगातार चौबीसों घंटे चलाने के लिए (24/7) हमें इस मकड़ी को स्क्रैपिंगहब पर तैनात करने की आवश्यकता है।

चरण 4 -

स्क्रैपिंगहब पर खाता बनाना

उसके लिए, आपको बस अपने जीमेल खाते या जीथब का उपयोग करके स्क्रैपिंगहब लॉगिन पेज पर लॉग इन करना होगा। यह डैशबोर्ड पर रीडायरेक्ट करेगा।

स्क्रैपी स्पाइडर को स्क्रैपिंग हब पर तैनात करना

अब क्रिएट प्रोजेक्ट पर क्लिक करें और प्रोजेक्ट के नाम का उल्लेख करें। अब हम कमांड लाइन (सीएलआई) या जीथब के माध्यम से अपने प्रोजेक्ट को क्लाउड में जोड़ सकते हैं। आगे हम अपना कोड shub CLI के माध्यम से परिनियोजित करने जा रहे हैं, पहले shub इंस्टॉल करें

$pip install shub

शुब स्थापित करने के बाद, खाता बनाने पर उत्पन्न एपीआई कुंजी का उपयोग करके शुब खाते में लॉगिन करें (https://app.scrapinghub.com/account/apikey से अपनी एपीआई कुंजी दर्ज करें)।

$shub login

यदि आपकी एपीआई कुंजी ठीक है, तो आप अभी लॉग इन हैं। अब हमें इसे परिनियोजित आईडी का उपयोग करके परिनियोजित करने की आवश्यकता है, जिसे आप "अपना कोड परिनियोजित करें" खंड (6 अंकों की संख्या) के कमांड लाइन अनुभाग पर देखते हैं।

$ shub deploy deploy_id

यह कमांड लाइन से है, अब स्पाइडर डैशबोर्ड सेक्शन पर वापस जाएं, उपयोगकर्ता तैयार स्पाइडर देख सकता है। बस स्पाइडर नेम और रन बटन पर क्लिक करें। बस अब आप अपने डैशबोर्ड में अपने स्पाइडर को देख सकते हैं, कुछ इस तरह -

स्क्रैपी स्पाइडर को स्क्रैपिंग हब पर तैनात करना

यह हमें एक क्लिक के माध्यम से चल रही प्रगति दिखाएगा और आपको अपनी स्थानीय मशीन को 24/7 चलाने की आवश्यकता नहीं है।


  1. रूबी के साथ Google क्लाउड फ़ंक्शंस का निर्माण, परीक्षण और परिनियोजन

    सर्वर रहित कार्य क्लाउड सेवाओं के विकास और परिनियोजन का एक नया प्रोग्रामिंग प्रतिमान है। सर्वर रहित दुनिया में, हम क्लाउड प्रदाता के लिए अपनी बैकएंड सेवाओं के प्रावधान, रखरखाव और स्केलिंग को सारगर्भित करते हैं। यह डेवलपर्स को एक विशिष्ट समस्या को हल करने पर ध्यान केंद्रित करने की अनुमति देकर डेवलपर

  1. रूबी में एडब्ल्यूएस लैम्ब्डा फ़ंक्शंस का निर्माण, परीक्षण और तैनाती

    सॉफ्टवेयर विकसित करना चुनौतीपूर्ण हो सकता है, लेकिन इसे बनाए रखना कहीं अधिक चुनौतीपूर्ण है। रखरखाव में सॉफ्टवेयर पैच और सर्वर रखरखाव शामिल है। इस पोस्ट में, हम सर्वर प्रबंधन और रखरखाव पर ध्यान देंगे। परंपरागत रूप से, सर्वर ऑन-प्रिमाइसेस थे, जिसका अर्थ है भौतिक हार्डवेयर खरीदना और बनाए रखना। क्लाउड

  1. एडब्ल्यूएस लैम्ब्डा के लिए रेल की तैनाती

    सर्वर रहित कंप्यूटिंग एक क्लाउड प्रदाता को सर्वर के प्रबंधन और प्रावधान के काम को उतारने में मदद करती है और तेजी से अधिकांश प्रौद्योगिकी टीमों के लिए एक चीज बन रही है। AWS लैम्ब्डा एक प्रकार की सर्वर रहित तकनीक है जिसका उपयोग कई तकनीकी टीमों द्वारा किया जाता है। AWS लैम्ब्डा NodeJS, Java, Python और