3 回答

TA貢獻(xiàn)1784條經(jīng)驗 獲得超8個贊
我發(fā)現(xiàn)了如何配置請求的日志記錄級別,這是通過標(biāo)準(zhǔn)的日志記錄模塊完成的。我決定將其配置為不記錄消息,除非它們至少是警告:
import logging
logging.getLogger("requests").setLevel(logging.WARNING)
如果您也希望將此設(shè)置應(yīng)用于urllib3庫(通常由請求使用),請?zhí)砑右韵聝?nèi)容:
logging.getLogger("urllib3").setLevel(logging.WARNING)

TA貢獻(xiàn)1797條經(jīng)驗 獲得超4個贊
如果您是來這里尋找修改任何(可能是深度嵌套的)模塊的日志記錄的方法,請使用它logging.Logger.manager.loggerDict來獲取所有記錄器對象的字典。然后可以將返回的名稱用作以下參數(shù)logging.getLogger:
import requests
import logging
for key in logging.Logger.manager.loggerDict:
print(key)
# requests.packages.urllib3.connectionpool
# requests.packages.urllib3.util
# requests.packages
# requests.packages.urllib3
# requests.packages.urllib3.util.retry
# PYREADLINE
# requests
# requests.packages.urllib3.poolmanager
logging.getLogger('requests').setLevel(logging.CRITICAL)
# Could also use the dictionary directly:
# logging.Logger.manager.loggerDict['requests'].setLevel(logging.CRITICAL)
請注意每個用戶136036中的注釋,此方法僅顯示運行上述代碼片段時存在的記錄器。例如,如果某個模塊在實例化一個類時創(chuàng)建了一個新的記錄器,則必須在創(chuàng)建該類之后放置此代碼段以打印其名稱。
添加回答
舉報