Scrapy - Console Telnet

Descrizione

La console Telnet è una shell Python che viene eseguita all'interno del processo Scrapy e viene utilizzata per l'ispezione e il controllo di un processo in esecuzione di Scrapy.

Accedi alla console Telnet

È possibile accedere alla console telnet utilizzando il seguente comando:

telnet localhost 6023

Fondamentalmente, la console telnet è elencata nella porta TCP, che è descritta in TELNETCONSOLE_PORT impostazioni.

Variabili

Alcune delle variabili predefinite fornite nella tabella seguente vengono utilizzate come scorciatoie:

Suor n Collegamento e descrizione
1

crawler

Si riferisce all'oggetto Scrapy Crawler (scrapy.crawler.Crawler).

2

engine

Si riferisce all'attributo Crawler.engine.

3

spider

Questo si riferisce al ragno che è attivo.

4

slot

Questo si riferisce allo slot del motore.

5

extensions

Si riferisce all'attributo Extension Manager (Crawler.extensions).

6

stats

Si riferisce all'attributo Stats Collector (Crawler.stats).

7

setting

Si riferisce all'attributo dell'oggetto impostazioni Scrapy (Crawler.settings).

8

est

Si riferisce alla stampa di un rapporto sullo stato del motore.

9

prefs

Si riferisce alla memoria per il debug.

10

p

Si riferisce a un collegamento alla funzione pprint.pprint .

11

hpy

Questo si riferisce al debug della memoria.

Esempi

Di seguito sono riportati alcuni esempi illustrati utilizzando Telnet Console.

Metti in pausa, riprendi e spegni il motore Scrapy

Per mettere in pausa il motore Scrapy, utilizzare il seguente comando:

telnet localhost 6023
>>> engine.pause()
>>>

Per riprendere il motore Scrapy, utilizzare il seguente comando:

telnet localhost 6023
>>> engine.unpause()
>>>

Per arrestare il motore Scrapy, utilizzare il seguente comando:

telnet localhost 6023
>>> engine.stop()
Connection closed by foreign host.

Visualizza lo stato del motore

Usi della console Telnet est() metodo per verificare lo stato del motore Scrapy come mostrato nel codice seguente -

telnet localhost 6023
>>> est()
Execution engine status

time()-engine.start_time                        : 8.62972998619
engine.has_capacity()                           : False
len(engine.downloader.active)                   : 16
engine.scraper.is_idle()                        : False
engine.spider.name                              : followall
engine.spider_is_idle(engine.spider)            : False
engine.slot.closing                             : False
len(engine.slot.inprogress)                     : 16
len(engine.slot.scheduler.dqs or [])            : 0
len(engine.slot.scheduler.mqs)                  : 92
len(engine.scraper.slot.queue)                  : 0
len(engine.scraper.slot.active)                 : 0
engine.scraper.slot.active_size                 : 0
engine.scraper.slot.itemproc_size               : 0
engine.scraper.slot.needs_backout()             : False

Segnali della console Telnet

È possibile utilizzare i segnali della console telnet per aggiungere, aggiornare o eliminare le variabili nello spazio dei nomi locale telnet. Per eseguire questa azione, devi aggiungere il comando telnet_vars nel tuo gestore.

scrapy.extensions.telnet.update_telnet_vars(telnet_vars)

Parametri -

telnet_vars (dict)

Dove, dict è un dizionario contenente variabili telnet.

Impostazioni Telnet

La tabella seguente mostra le impostazioni che controllano il comportamento di Telnet Console:

Suor n Impostazioni e descrizione Valore predefinito
1

TELNETCONSOLE_PORT

Si riferisce all'intervallo di porte per la console Telnet. Se è impostato su nessuno, la porta verrà assegnata dinamicamente.

[6023, 6073]
2

TELNETCONSOLE_HOST

Si riferisce all'interfaccia su cui la console telnet dovrebbe ascoltare.

"127.0.0.1"