Scrapy - Outils de ligne de commande

La description

L'outil de ligne de commande Scrapy est utilisé pour contrôler Scrapy, souvent appelé 'Scrapy tool'. Il comprend les commandes pour divers objets avec un groupe d'arguments et d'options.

Paramètres de configuration

Scrapy trouvera les paramètres de configuration dans le scrapy.cfgfichier. Voici quelques endroits -

  • C: \ scrapy (dossier du projet) \ scrapy.cfg dans le système

  • ~ / .config / scrapy.cfg ($ XDG_CONFIG_HOME) et ~ / .scrapy.cfg ($ HOME) pour les paramètres globaux

  • Vous pouvez trouver le scrapy.cfg à la racine du projet.

Scrapy peut également être configuré à l'aide des variables d'environnement suivantes -

  • SCRAPY_SETTINGS_MODULE
  • SCRAPY_PROJECT
  • SCRAPY_PYTHON_SHELL

Projet Scrapy de structure par défaut

La structure suivante montre la structure de fichier par défaut du projet Scrapy.

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
      . . .

le scrapy.cfgfile est un répertoire racine du projet, qui comprend le nom du projet avec les paramètres du projet. Par exemple -

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

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

Utilisation de l'outil Scrapy

L'outil Scrapy fournit certaines utilisations et commandes disponibles comme suit -

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

Créer un projet

Vous pouvez utiliser la commande suivante pour créer le projet dans Scrapy -

scrapy startproject project_name

Cela créera le projet appelé project_nameannuaire. Ensuite, accédez au projet nouvellement créé, en utilisant la commande suivante -

cd  project_name

Contrôle des projets

Vous pouvez contrôler le projet et les gérer à l'aide de l'outil Scrapy et également créer la nouvelle araignée, en utilisant la commande suivante -

scrapy genspider mydomain mydomain.com

Les commandes telles que crawl, etc. doivent être utilisées dans le projet Scrapy. Vous saurez quelles commandes doivent être exécutées dans le projet Scrapy dans la section suivante.

Scrapy contient des commandes intégrées, qui peuvent être utilisées pour votre projet. Pour voir la liste des commandes disponibles, utilisez la commande suivante -

scrapy -h

Lorsque vous exécutez la commande suivante, Scrapy affichera la liste des commandes disponibles comme indiqué -

  • fetch - Il récupère l'URL à l'aide du téléchargeur Scrapy.

  • runspider - Il est utilisé pour exécuter spider autonome sans créer de projet.

  • settings - Il spécifie la valeur de réglage du projet.

  • shell - C'est un module de scraping interactif pour l'URL donnée.

  • startproject - Il crée un nouveau projet Scrapy.

  • version - Il affiche la version Scrapy.

  • view - Il récupère l'URL à l'aide du téléchargeur Scrapy et affiche le contenu dans un navigateur.

Vous pouvez avoir certaines commandes liées au projet comme répertoriées -

  • crawl - Il est utilisé pour analyser les données à l'aide de l'araignée.

  • check - Il vérifie les éléments renvoyés par la commande analysée.

  • list - Il affiche la liste des araignées disponibles présentes dans le projet.

  • edit - Vous pouvez éditer les araignées en utilisant l'éditeur.

  • parse - Il analyse l'URL donnée avec l'araignée.

  • bench - Il est utilisé pour exécuter un test de référence rapide (Benchmark indique combien de pages peuvent être explorées par minute par Scrapy).

Commandes de projet personnalisées

Vous pouvez créer une commande de projet personnalisée avec COMMANDS_MODULEdans le projet Scrapy. Il inclut une chaîne vide par défaut dans le paramètre. Vous pouvez ajouter la commande personnalisée suivante -

COMMANDS_MODULE = 'mycmd.commands'

Les commandes Scrapy peuvent être ajoutées à l'aide de la section scrapy.commands dans le fichier setup.py présenté comme suit -

from setuptools import setup, find_packages  

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

Le code ci-dessus ajoute cmd_demo commande dans le setup.py fichier.