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" |