鍍金池/ 教程/ Java/ Scrapy命令行工具
Scrapy項(xiàng)目加載器(Item Loader)
Scrapy快速入門
Scrapy蜘蛛(Spider)
Scrapy教程
Scrapy定義項(xiàng)目
Scrapy執(zhí)行爬行捉取
Scrapy項(xiàng)目(Items)
Scrapy安裝
Scrapy提取項(xiàng)目
Scrapy第一個(gè)Spider
Scrapy選擇器(Selector)
Scrapy Shell
Scrapy創(chuàng)建項(xiàng)目
Scrapy命令行工具
Scrapy日志
Scrapy使用項(xiàng)目

Scrapy命令行工具

Scrapy命令行工具用于控制Scrapy,它通常被稱為“Scrapy工具”。它包括用于不同對(duì)象的參數(shù)和選項(xiàng)組的命令。

配置設(shè)置

scrapy 會(huì)找到 scrapy.cfg 文件中設(shè)置的配置。如下面提到的:
  • C:\scrapy(project folder)\scrapy.cfg 在系統(tǒng)中;

  • ~/.config/scrapy.cfg ($XDG_CONFIG_HOME) and ~/.scrapy.cfg ($HOME) ,這些是全局設(shè)置

  • 可以在項(xiàng)目的根目錄里面找到 scrapy.cfg 這個(gè)文件。
Scrapy還可以使用以下的環(huán)境變量來配置:
  • SCRAPY_SETTINGS_MODULE

  • SCRAPY_PROJECT

  • SCRAPY_PYTHON_SHELL

默認(rèn)Scrapy項(xiàng)目結(jié)構(gòu)

下面的結(jié)構(gòu)顯示 Scrapy項(xiàng)目的默認(rèn)文件結(jié)構(gòu):
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 文件是在項(xiàng)目的根目錄,其中包括項(xiàng)目名稱與項(xiàng)目設(shè)置。
例如:
[settings]
default = [name of the project].settings

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

使用Scrapy工具

通過使用Scrapy工具,它會(huì)提供一些可使用以的命令如下所示:
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

創(chuàng)建項(xiàng)目

您可以使用下面的命令來創(chuàng)建 Scrapy 項(xiàng)目:
scrapy startproject scrapy_project
這將創(chuàng)建一個(gè)名為 project_name 的項(xiàng)目目錄。接下來,進(jìn)入新創(chuàng)建的項(xiàng)目,使用下面的命令:
cd  scrapy_project

控制項(xiàng)目

您可以控制項(xiàng)目,并通過使用Scrapy工具,也創(chuàng)造了新的蜘蛛(spider),使用下面的命令進(jìn)行管理:
scrapy genspider mydomain yiibai.com
如:抓取等等的命令在 Scrapy 項(xiàng)目中的使用。這里所有命令在接下來 Scrapy 項(xiàng)目?jī)?nèi)使用運(yùn)行。
Scrapy包含一些內(nèi)置的命令,它可以用來為項(xiàng)目。要查看可用命令的列表,請(qǐng)使用以下命令:
scrapy -h
當(dāng)運(yùn)行上面的命令,Scrapy將顯示如下面所列出可用命令的列表:
  • fetch: 它使用Scrapy downloader 提取的 URL。

  • runspider: 它用于而無需創(chuàng)建一個(gè)項(xiàng)目運(yùn)行自行包含蜘蛛(spider)。

  • settings: 它規(guī)定了項(xiàng)目的設(shè)定值。

  • shell: 這是一個(gè)給定URL的一個(gè)交互式模塊。

  • startproject: 它創(chuàng)建了一個(gè)新的 Scrapy 項(xiàng)目。

  • version: 它顯示Scrapy版本。

  • view: 它使用Scrapy downloader 提取 URL并顯示在瀏覽器中的內(nèi)容。

一些項(xiàng)目相關(guān)的命令,如下:
  • crawl: 它是用來使用蜘蛛抓取數(shù)據(jù);

  • check: 它檢查項(xiàng)目并由 crawl 命令返回;

  • list: 它顯示本項(xiàng)目中可用蜘蛛(spider)的列表;

  • edit: 可以通過編輯器編輯蜘蛛;

  • parse:它通過蜘蛛分析給定的URL;

  • bench: 它是用來快速運(yùn)行基準(zhǔn)測(cè)試(基準(zhǔn)講述每分鐘可被Scrapy抓取的頁面數(shù)量)。

自定義項(xiàng)目命令

可以在Scrapy項(xiàng)目中通過COMMANDS_MODULE設(shè)置構(gòu)建一個(gè)自定義項(xiàng)目命令。
COMMANDS_MODULE = 'mycmd.commands'
Scrapy命令可以通過使用 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 命令。