Scrapy - Ferramentas de linha de comando

Descrição

A ferramenta de linha de comando Scrapy é usada para controlar o Scrapy, que geralmente é conhecido como 'Scrapy tool'. Inclui os comandos para vários objetos com um grupo de argumentos e opções.

Definições de configuração

O Scrapy encontrará definições de configuração no scrapy.cfgArquivo. A seguir estão alguns locais -

  • C: \ scrapy (pasta do projeto) \ scrapy.cfg no sistema

  • ~ / .config / scrapy.cfg ($ XDG_CONFIG_HOME) e ~ / .scrapy.cfg ($ HOME) para configurações globais

  • Você pode encontrar o scrapy.cfg dentro da raiz do projeto.

O Scrapy também pode ser configurado usando as seguintes variáveis ​​de ambiente -

  • SCRAPY_SETTINGS_MODULE
  • SCRAPY_PROJECT
  • SCRAPY_PYTHON_SHELL

Projeto Scrapy de Estrutura Padrão

A estrutura a seguir mostra a estrutura de arquivos padrão do projeto 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
      . . .

o scrapy.cfgfile é um diretório raiz do projeto, que inclui o nome do projeto com as configurações do projeto. Por exemplo -

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

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

Usando a ferramenta Scrapy

A ferramenta Scrapy fornece alguns comandos de uso e disponíveis da seguinte forma -

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

Criando um Projeto

Você pode usar o seguinte comando para criar o projeto no Scrapy -

scrapy startproject project_name

Isso criará o projeto chamado project_namediretório. Em seguida, vá para o projeto recém-criado, usando o seguinte comando -

cd  project_name

Controle de projetos

Você pode controlar o projeto e gerenciá-los usando a ferramenta Scrapy e também criar o novo spider, usando o seguinte comando -

scrapy genspider mydomain mydomain.com

Os comandos como crawl, etc. devem ser usados ​​dentro do projeto Scrapy. Você saberá quais comandos devem ser executados dentro do projeto Scrapy na próxima seção.

O Scrapy contém alguns comandos integrados, que podem ser usados ​​em seu projeto. Para ver a lista de comandos disponíveis, use o seguinte comando -

scrapy -h

Quando você executa o seguinte comando, o Scrapy exibe a lista de comandos disponíveis conforme listado -

  • fetch - Ele busca a URL usando o downloader Scrapy.

  • runspider - É usado para executar o spider independente sem criar um projeto.

  • settings - Especifica o valor de configuração do projeto.

  • shell - É um módulo de raspagem interativo para o URL fornecido.

  • startproject - Cria um novo projeto Scrapy.

  • version - Exibe a versão Scrapy.

  • view - Ele busca a URL usando o downloader Scrapy e mostra o conteúdo em um navegador.

Você pode ter alguns comandos relacionados ao projeto conforme listado -

  • crawl - É usado para rastrear dados usando o spider.

  • check - Verifica os itens retornados pelo comando rastreado.

  • list - Mostra a lista de spiders disponíveis no projeto.

  • edit - Você pode editar as aranhas usando o editor.

  • parse - Ele analisa o URL fornecido com o spider.

  • bench - É usado para executar um teste de benchmark rápido (o Benchmark informa quantas páginas podem ser rastreadas por minuto pelo Scrapy).

Comandos de projeto personalizados

Você pode construir um comando de projeto personalizado com COMMANDS_MODULEconfiguração no projeto Scrapy. Inclui uma string vazia padrão na configuração. Você pode adicionar o seguinte comando personalizado -

COMMANDS_MODULE = 'mycmd.commands'

Os comandos scrapy podem ser adicionados usando a seção scrapy.commands no arquivo setup.py mostrado a seguir -

from setuptools import setup, find_packages  

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

O código acima adiciona cmd_demo comando no setup.py Arquivo.