網(wǎng)站首頁 編程語言 正文
遠(yuǎn)程登錄控制臺
Scrapy附帶一個內(nèi)置的telnet控制臺,用于檢查和控制Scrapy運行過程。telnet控制臺只是一個運行在scrappy進程內(nèi)部的常規(guī)python shell,因此您可以從中做任何事情。
telnet控制臺是一個 built-in Scrapy extension 它在默認(rèn)情況下是啟用的,但如果需要,您也可以禁用它。有關(guān)擴展本身的更多信息,請參閱 Telnet控制臺擴展 。
警告
通過公共網(wǎng)絡(luò)使用telnet控制臺是不安全的,因為telnet不提供任何傳輸層安全性。擁有用戶名/密碼驗證不會改變這一點。
預(yù)期用途是本地連接到正在運行的Scrapy Spider(Spider進程和Telnet客戶端在同一臺計算機上)或通過安全連接(VPN、SSH通道)進行連接。請避免在不安全的連接上使用telnet控制臺,或使用 TELNETCONSOLE_ENABLED 選擇權(quán)。
如何訪問telnet控制臺
telnet控制臺偵聽中定義的TCP端口 TELNETCONSOLE_PORT 設(shè)置,默認(rèn)為 6023 . 要訪問控制臺,您需要鍵入:
telnet localhost 6023 Trying localhost... Connected to localhost. Escape character is '^]'. Username: Password: >>>
默認(rèn)用戶名為 scrapy 密碼是自動生成的。自動生成的密碼可以在垃圾日志上看到,如下例所示:
2018-10-16 14:35:21 [scrapy.extensions.telnet] INFO: Telnet Password: 16f92501e8a59326
默認(rèn)用戶名和密碼可以被設(shè)置覆蓋 TELNETCONSOLE_USERNAME 和 TELNETCONSOLE_PASSWORD .
警告
用戶名和密碼僅提供有限的保護,因為telnet不使用安全傳輸-默認(rèn)情況下,即使設(shè)置了用戶名和密碼,通信也不會加密。
您需要在Windows和大多數(shù)Linux發(fā)行版中默認(rèn)安裝的telnet程序。
telnet控制臺中的可用變量
elnet控制臺就像一個運行在scrappy進程內(nèi)部的常規(guī)python shell,所以您可以從中做任何事情,包括導(dǎo)入新模塊等。
但是,telnet控制臺附帶一些為方便起見而定義的默認(rèn)變量:
捷徑 | 描述 |
---|---|
crawler |
殘廢的爬蟲 (scrapy.crawler.Crawler 對象) |
engine |
crawler.engine屬性 |
spider |
主動蜘蛛 |
slot |
發(fā)動機槽 |
extensions |
擴展管理器(crawler.extensions屬性) |
stats |
stats收集器(crawler.stats屬性) |
settings |
Scrapy設(shè)置對象(crawler.settings屬性) |
est |
打印發(fā)動機狀態(tài)報告 |
prefs |
內(nèi)存調(diào)試(請參見 調(diào)試內(nèi)存泄漏) |
p |
到的快捷方式 pprint.pprint() 功能 |
hpy |
內(nèi)存調(diào)試(請參見 調(diào)試內(nèi)存泄漏) |
telnet控制臺使用示例
以下是使用telnet控制臺可以執(zhí)行的一些示例任務(wù):
查看發(fā)動機狀態(tài)
你可以使用 est() scrapy引擎使用telnet控制臺快速顯示其狀態(tài)的方法:
elnet localhost 6023 >>> est() Execution engine status time()-engine.start_time ? ? ? ? ? ? ? ? ? ? ? ?: 8.62972998619 len(engine.downloader.active) ? ? ? ? ? ? ? ? ? : 16 engine.scraper.is_idle() ? ? ? ? ? ? ? ? ? ? ? ?: False engine.spider.name ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?: followall engine.spider_is_idle() ? ? ? ? ? ? ? ? ? ? ? ? : 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
暫停、恢復(fù)和停止報廢發(fā)動機
暫停:
telnet localhost 6023 >>> engine.pause() >>>
恢復(fù):
telnet localhost 6023 >>> engine.unpause() >>>
停止:
telnet localhost 6023 >>> engine.stop() Connection closed by foreign host.
Telnet控制臺信號
scrapy.extensions.telnet.update_telnet_vars(telnet_vars)
在telnet控制臺打開之前發(fā)送。您可以連接到這個信號來添加、刪除或更新telnet本地命名空間中可用的變量。為此,需要更新 telnet_vars 聽寫你的處理程序。
參數(shù)
telnet_vars (dict) – telnet變量的dict
遠(yuǎn)程登錄設(shè)置
以下是控制telnet控制臺行為的設(shè)置:
TELNETCONSOLE_PORT
違約: [6023, 6073]
用于telnet控制臺的端口范圍。如果設(shè)置為 None 或 0 ,使用動態(tài)分配的端口。
TELNETCONSOLE_HOST
違約: '127.0.0.1'
telnet控制臺應(yīng)該監(jiān)聽的接口
TELNETCONSOLE_USERNAME
違約: 'scrapy'
用于telnet控制臺的用戶名
TELNETCONSOLE_PASSWORD
違約: None
telnet控制臺使用的密碼,默認(rèn)行為是讓它自動生成。
原文鏈接:https://blog.csdn.net/zhongjianboy/article/details/129221371
- 上一篇:沒有了
- 下一篇:沒有了
相關(guān)推薦
- 2022-10-01 Go語言并發(fā)編程基礎(chǔ)上下文概念詳解_Golang
- 2022-09-06 Redis與本地緩存的結(jié)合實現(xiàn)_Redis
- 2023-06-16 GO語言中Chan實現(xiàn)原理的示例詳解_Golang
- 2022-09-05 詳解apache編譯安裝httpd-2.4.54及三種風(fēng)格的init程序特點和區(qū)別_Linux
- 2023-02-04 Golang中for循環(huán)的用法示例詳解_Golang
- 2022-04-05 Python中hash加密簡介及使用方法_python
- 2022-09-14 jQuery實現(xiàn)簡單計算器功能_jquery
- 2022-11-30 關(guān)于頁面加載即執(zhí)行JQuery的三種方法小結(jié)_jquery
- 欄目分類
-
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支