स्क्रेपी - कमांड लाइन टूल्स

विवरण

स्क्रेपी कमांड लाइन टूल का उपयोग स्क्रेपी को नियंत्रित करने के लिए किया जाता है, जिसे अक्सर कहा जाता है 'Scrapy tool'। इसमें तर्कों और विकल्पों के समूह के साथ विभिन्न वस्तुओं के लिए कमांड शामिल हैं।

कॉन्फ़िगरेशन सेटिंग्स

Scrapy में कॉन्फ़िगरेशन सेटिंग्स मिलेगी scrapy.cfgफ़ाइल। निम्नलिखित कुछ स्थान हैं -

  • C: \ scrapy (प्रोजेक्ट फ़ोल्डर) \ scrapy.cfg सिस्टम में

  • वैश्विक सेटिंग्स के लिए ~ / .config / scrapy.cfg ($ XDG_CONFIG_HOME) और ~ / .scrapy.cfg ($ HOME)।

  • आप इस परियोजना की जड़ के अंदर scrapy.cfg पा सकते हैं।

निम्नांकित पर्यावरण चर का उपयोग करके भी स्क्रेपी को कॉन्फ़िगर किया जा सकता है -

  • SCRAPY_SETTINGS_MODULE
  • SCRAPY_PROJECT
  • SCRAPY_PYTHON_SHELL

डिफ़ॉल्ट संरचना स्क्रैपी परियोजना

निम्न संरचना स्क्रैपी प्रोजेक्ट की डिफ़ॉल्ट फ़ाइल संरचना को दिखाती है।

scrapy.cfg                - Deploy the configuration file
project_name/             - Name of the project
   _init_.py
   items.py               - It is project's items file
   pipelines.py           - It is project's pipelines file
   settings.py            - It is project's settings file
   spiders                - It is the spiders directory
      _init_.py
      spider_name.py
      . . .

scrapy.cfgफ़ाइल एक प्रोजेक्ट रूट डायरेक्टरी है, जिसमें प्रोजेक्ट सेटिंग्स के साथ प्रोजेक्ट का नाम शामिल है। उदाहरण के लिए -

[settings] 
default = [name of the project].settings  

[deploy] 
#url = http://localhost:6800/ 
project = [name of the project]

स्क्रैपी टूल का उपयोग करना

स्क्रैपी टूल कुछ उपयोग और उपलब्ध कमांड निम्नानुसार प्रदान करता है -

Scrapy X.Y  - no active project 
Usage: 
   scrapy  [options] [arguments] 
Available commands: 
   crawl      It puts spider (handle the URL) to work for crawling data 
   fetch      It fetches the response from the given URL

एक परियोजना का निर्माण

Scrapy में प्रोजेक्ट बनाने के लिए आप निम्न कमांड का उपयोग कर सकते हैं -

scrapy startproject project_name

इससे प्रोजेक्ट नामक प्रोजेक्ट बनेगा project_nameनिर्देशिका। अगला, नए कमांड पर जाएं, जो निम्न कमांड का उपयोग कर रहा है -

cd  project_name

परियोजनाओं को नियंत्रित करना

आप प्रोजेक्ट को नियंत्रित कर सकते हैं और उन्हें स्क्रैपी टूल का उपयोग करके प्रबंधित कर सकते हैं और निम्न कमांड का उपयोग करके नए स्पाइडर भी बना सकते हैं -

scrapy genspider mydomain mydomain.com

आदेश जैसे क्रॉल, आदि का उपयोग स्क्रेपी परियोजना के अंदर किया जाना चाहिए। आपको पता चल जाएगा कि आने वाले सेक्शन में स्क्रेपी प्रोजेक्ट के अंदर कौन सी कमांड चलनी चाहिए।

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

scrapy -h

जब आप निम्नलिखित कमांड चलाते हैं, तो स्क्रैपी उपलब्ध कमांड की सूची को सूचीबद्ध के रूप में प्रदर्शित करेगा -

  • fetch - यह स्क्रैपी डाउनलोडर का उपयोग करके URL प्राप्त करता है।

  • runspider - यह एक परियोजना बनाने के बिना स्व-निहित मकड़ी को चलाने के लिए उपयोग किया जाता है।

  • settings - यह प्रोजेक्ट सेटिंग मान को निर्दिष्ट करता है।

  • shell - यह दिए गए URL के लिए एक इंटरैक्टिव स्क्रैपिंग मॉड्यूल है।

  • startproject - यह एक नया स्क्रेपी प्रोजेक्ट बनाता है।

  • version - यह स्क्रेपी संस्करण प्रदर्शित करता है।

  • view - यह स्क्रैप डाउनलोडर का उपयोग करके URL प्राप्त करता है और एक ब्राउज़र में सामग्री दिखाता है।

आपके पास प्रोजेक्ट से संबंधित कुछ कमांड्स सूचीबद्ध हैं -

  • crawl - इसका उपयोग मकड़ी के डेटा को क्रॉल करने के लिए किया जाता है।

  • check - यह क्रॉल किए गए कमांड द्वारा लौटाए गए आइटम की जांच करता है।

  • list - यह परियोजना में मौजूद उपलब्ध मकड़ियों की सूची प्रदर्शित करता है।

  • edit - आप संपादक का उपयोग करके मकड़ियों को संपादित कर सकते हैं।

  • parse - यह मकड़ी के साथ दिए गए URL को पार्स करता है।

  • bench - इसका उपयोग त्वरित बेंचमार्क परीक्षण चलाने के लिए किया जाता है (बेंचमार्क बताता है कि स्क्रेपी द्वारा प्रति मिनट कितने पृष्ठों को क्रॉल किया जा सकता है)।

कस्टम प्रोजेक्ट कमांड्स

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

COMMANDS_MODULE = 'mycmd.commands'

Scrapy कमांड को इस प्रकार दिखाया गया setup.py फ़ाइल में scrapy.commands अनुभाग का उपयोग करके जोड़ा जा सकता है -

from setuptools import setup, find_packages  

setup(name = 'scrapy-module_demo', 
   entry_points = { 
      'scrapy.commands': [ 
         'cmd_demo = my_module.commands:CmdDemo', 
      ], 
   }, 
)

उपरोक्त कोड जोड़ता है cmd_demo में कमान setup.py फ़ाइल।