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.