Scrapy - Komut Satırı Araçları

Açıklama

Scrapy komut satırı aracı, genellikle olarak adlandırılan Scrapy'yi kontrol etmek için kullanılır. 'Scrapy tool'. Bir grup argüman ve seçenekle çeşitli nesneler için komutlar içerir.

Yapılandırma ayarları

Scrapy, yapılandırma ayarlarını scrapy.cfgdosya. Aşağıda birkaç konum verilmiştir -

  • Sistemde C: \ scrapy (proje klasörü) \ scrapy.cfg

  • ~ / .config / scrapy.cfg ($ XDG_CONFIG_HOME) ve ~ / .scrapy.cfg ($ HOME) genel ayarlar için

  • Scrapy.cfg dosyasını projenin kök dizininde bulabilirsiniz.

Scrapy, aşağıdaki ortam değişkenleri kullanılarak da yapılandırılabilir -

  • SCRAPY_SETTINGS_MODULE
  • SCRAPY_PROJECT
  • SCRAPY_PYTHON_SHELL

Varsayılan Yapı Hurda Projesi

Aşağıdaki yapı, Scrapy projesinin varsayılan dosya yapısını göstermektedir.

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.cfgfile, proje ayarlarıyla birlikte proje adını içeren bir proje kök dizinidir. Örneğin -

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

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

Scrapy Aracı Kullanma

Scrapy aracı, aşağıdaki gibi bazı kullanım ve mevcut komutlar sağlar -

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

Proje Oluşturmak

Projeyi Scrapy'de oluşturmak için aşağıdaki komutu kullanabilirsiniz -

scrapy startproject project_name

Bu, adlı projeyi yaratacak project_namedizin. Ardından, aşağıdaki komutu kullanarak yeni oluşturulan projeye gidin -

cd  project_name

Projeleri Kontrol Etmek

Projeyi Scrapy aracını kullanarak kontrol edebilir ve yönetebilir ve ayrıca aşağıdaki komutu kullanarak yeni örümceği yaratabilirsiniz -

scrapy genspider mydomain mydomain.com

Crawl vb. Komutlar Scrapy projesi içerisinde kullanılmalıdır. Önümüzdeki bölümde Scrapy projesi içerisinde hangi komutların çalıştırılması gerektiğini öğreneceksiniz.

Scrapy, projeniz için kullanılabilecek bazı yerleşik komutlar içerir. Kullanılabilen komutların listesini görmek için aşağıdaki komutu kullanın -

scrapy -h

Aşağıdaki komutu çalıştırdığınızda, Scrapy listelenen mevcut komutların listesini gösterecektir -

  • fetch - Scrapy indiricisini kullanarak URL'yi getirir.

  • runspider - Bir proje oluşturmadan kendi kendine yeten örümceği çalıştırmak için kullanılır.

  • settings - Proje ayar değerini belirtir.

  • shell - Verilen URL için etkileşimli bir kazıma modülüdür.

  • startproject - Yeni bir Scrapy projesi yaratır.

  • version - Scrapy versiyonunu gösterir.

  • view - Scrapy indiricisini kullanarak URL'yi getirir ve içeriği bir tarayıcıda gösterir.

Listelendiği gibi projeyle ilgili bazı komutlara sahip olabilirsiniz -

  • crawl - Örümcek kullanarak verileri taramak için kullanılır.

  • check - Taranan komutun döndürdüğü öğeleri kontrol eder.

  • list - Projede bulunan mevcut örümceklerin listesini görüntüler.

  • edit - Düzenleyiciyi kullanarak örümcekleri düzenleyebilirsiniz.

  • parse - Verilen URL'yi örümcekle ayrıştırır.

  • bench - Hızlı karşılaştırma testi çalıştırmak için kullanılır (Benchmark, Scrapy tarafından dakikada kaç sayfanın taranabileceğini söyler)

Özel Proje Komutları

İle özel bir proje komutu oluşturabilirsiniz. COMMANDS_MODULEScrapy projesinde ayar. Ayarda varsayılan boş bir dize içerir. Aşağıdaki özel komutu ekleyebilirsiniz -

COMMANDS_MODULE = 'mycmd.commands'

Scrapy komutları, aşağıdaki gibi gösterilen setup.py dosyasındaki scrapy.commands bölümü kullanılarak eklenebilir -

from setuptools import setup, find_packages  

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

Yukarıdaki kod ekler cmd_demo komut setup.py dosya.