Scrapy-command-line-tools

提供:Dev Guides
移動先:案内検索

Scrapy-コマンドラインツール

説明

Scrapyコマンドラインツールは、Scrapyを制御するために使用されます。これは、 'Scrapyツール' と呼ばれることがよくあります。 これには、一連の引数とオプションを持つさまざまなオブジェクトのコマンドが含まれています。

構成設定

Scrapyは、 scrapy.cfg ファイルで構成設定を見つけます。 以下はいくつかの場所です-

  • システム内のC:\ scrapy(project folder)\ scrapy.cfg
  • 〜/.config/scrapy.cfg($ XDG_CONFIG_HOME)および〜/.scrapy.cfg($ HOME)グローバル設定
  • プロジェクトのルート内でscrapy.cfgを見つけることができます。

スクレイピーは、次の環境変数を使用して構成することもできます-

  • SCRAPY_SETTINGS_MODULE
  • SCRAPY_PROJECT
  • SCRAPY_PYTHON_SHELL

デフォルト構造スクレイピープロジェクト

次の構造は、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
      . . .
*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プロジェクト内で使用する必要があります。 次のセクションで、Scrapyプロジェクト内でどのコマンドを実行する必要があるかがわかります。

Scrapyには、プロジェクトに使用できるいくつかの組み込みコマンドが含まれています。 利用可能なコマンドのリストを表示するには、次のコマンドを使用します-

scrapy -h

次のコマンドを実行すると、Scrapyは使用可能なコマンドのリストを表示します-

  • fetch -Scrapyダウンローダーを使用してURLを取得します。
  • runspider -プロジェクトを作成せずに自己完結型のスパイダーを実行するために使用されます。
  • settings -プロジェクトの設定値を指定します。
  • shell -指定されたURLのインタラクティブなスクレイピングモジュールです。
  • startproject -新しいScrapyプロジェクトを作成します。
  • version -Scrapyバージョンを表示します。
  • view -Scrapyダウンローダーを使用してURLを取得し、ブラウザーにコンテンツを表示します。

リストされているように、いくつかのプロジェクト関連のコマンドを持つことができます-

  • クロール-クモを使用してデータをクロールするために使用されます。
  • check -クロールされたコマンドによって返されたアイテムをチェックします。
  • list -プロジェクトに存在する利用可能なスパイダーのリストを表示します。
  • 編集-エディターを使用してスパイダーを編集できます。
  • parse -指定されたURLをスパイダーで解析します。
  • ベンチ-クイックベンチマークテストの実行に使用されます(ベンチマークは、Scrapyが1分間にクロールできるページ数を示します)。

カスタムプロジェクトコマンド

Scrapyプロジェクトで COMMANDS_MODULE 設定を使用してカスタムプロジェクトコマンドをビルドできます。 設定にデフォルトの空の文字列が含まれます。 次のカスタムコマンドを追加できます-

COMMANDS_MODULE = 'mycmd.commands'

スクレイピーコマンドは、次のように示されている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',
      ],
   },
)

上記のコードは、 setup.py ファイルに cmd_demo コマンドを追加します。