1. 程式人生 > >Python日誌控制檯輸出 週期檔案輸出

Python日誌控制檯輸出 週期檔案輸出

基於上節說到,爬蟲經常會用到的兩個包,一個是抓取包SpiderTool,二是日誌包loggingtool,今天主要分享Python經常會用到的日誌包loggingtool。
說明:
loggingtool包是基於logging模組的dictConfig進行的封裝,目前主要封裝有3類:控制檯輸出console,檔案大小輸出filebytes,檔案時間輸出filetime。使用者可以根據需要選擇,例如測試階段可以用console模式輸出,測試完畢後,正式上線則可以選擇檔案大小週期迴圈輸出,這樣避免了日誌檔案越積越多,佔磁碟空間。

console:

from loggingtool import loggingtool

logger = loggingtool.init_log("test", "console", level="DEBUG")

logger.warn("this is a warn")

結果:

2018-11-25 12:01:28,828 - test - WARNING -* 1520| this is a warn

檔案大小:

logging = init_log("test", "filebytes", level="DEBUG", maxBytes=1, backupCount=5,
                       filename="./log/test_file.log")
logging.warn("dasdas")
logging.error("dadasda")
logging.warn("dasdas")
logging.warn("dasdas")
logging.error("dadasda")

輸出的檔案結構:
檔案大小迴圈

檔案時間:

 logging = init_log("test", "filetime", level="DEBUG", when="s", backupCount=5,
                       filename="./log/test_file.log")
 logging.warn("dasdas")
 logging.error("dadasda")
 logging.warn("dasdas")
 logging.warn("dasdas")

檔案輸出結構:
檔案時間迴圈

這個日誌週期迴圈不僅適用於爬蟲,對於需要長時間執行的程式都可以使用,防止物理機因為磁碟而down掉。

後續這個日誌包會擴充套件為http日誌傳輸等內容。

前兩節主要介紹了兩個包,便於使用,後續會先後介紹爬蟲相關技術(登陸,引數破解,字型解密,cookie,抓包工具的使用,抓取系統,解析系統,監控系統,kafka訊息佇列)等。歡迎吐槽!!+qq:1050518702