scrapyドキュメントに従って爬虫類を学ぶ(2)


前にscrapyドキュメントに従って爬虫類を学ぶ(1)ことを書きましたが、久しぶりにまた来てもっと必要になりました.
 
1.コマンドラインツール
scrapyは、scrapyコマンドラインによって制御されます.ここでは、サブコマンドを区別するために「Scrapy tool」と呼ばれます.サブコマンドの場合は、直接「commands」または「Scrapy commands」と呼びます.
 
異なるニーズに応じて、scrapy toolは多くのコマンドを提供し、各コマンドは一連の異なるパラメータとオプションを受け入れます.
 
2.設定
scrapyは、以下のパスでini形式のscrapyを検索します.cfgパラメータプロファイル:
1./etc/scrapy.cfgまたはc:scrapyscrapy.cfg(システムレベル)
2. ~/.config/scrapy.cfg($XDG_CONFIG_HOME)と~/.scrapy.cfg($HOME)はグローバル構成(ユーザレベル)として
3. scrapy.cgは、現在のscrapyプロジェクトのルートパス(プロジェクトレベル)に組み込まれています.
これらのファイルの設定は、ユーザー定義の優先度がシステムレベルの構成(すなわち2が1より高い)よりも高く、プロジェクトレベルが他のすべての構成(すなわち3が1より高い)を上書きする順序でマージされます.
*ここで説明する上書きとは、同じエントリが複数のファイルで構成されて競合していることを意味し、すべてを上書きするのではなく、優先順位で切り捨てられます.
 
scrapyは、次のようないくつかの段階変数で構成することもできます.
  • SCRAPY_SETTINGS_MODULE
  • SCRAPY_PROJECT
  • SCRAPY_PYTHON_SHELL

  •  
    3.デフォルトのscrapyプロジェクト構造
    scrapyのデフォルト構造は次のとおりです.
    ├── scrapy.cfg
    └── tutorial
        ├── __init__.py
        ├── items.py
        ├── middlewares.py
        ├── pipelines.py
        ├── __pycache__
        ├── settings.py
        └── spiders
            ├── __init__.py
            └── __pycache__
            └── spider1.py
            └── spider2.py
            ...

    scrapy.cfgは、上記のプロジェクトレベルのプロファイルです.このファイルには、Pythonモジュール名のフィールドが含まれています.たとえば、次のようなアイテムの設定が定義されています.
    [settings]
    default = myproject.settings