[英]Python 3.5 logger.info in @classmethod
python的新手,以前从未使用过@classmethod。 问题-由于某些原因,在shutdown_webdriver
函数内未执行logger
方法。
import time
import logging
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.webdriver.common.proxy import Proxy
class WebBrowserSettings(object):
logger = logging.getLogger(__name__)
def __init__(self, proxy):
self.proxy = proxy
def setup_remote_chromedriver(self):
**irrelevant code**
return browser
@classmethod
def shutdown_webdriver(cls, browser):
print('here')
cls.logger.info("Shutting down 1")
for index in range(0, 20):
error_check = 0
try:
time.sleep(5)
browser.quit()
except Exception:
error_check = 1
if error_check == 0:
break
cls.logger.info("Browser is down")
因此,我在控制台输出中仅看到print('here')消息。
PS日志记录配置已设置且稳定,可在其他类中使用。
我认为此处显示的代码没有问题。 我怀疑你会看到日志输出,当你更换cls.logger.info
与cls.logger.error
。 这意味着日志记录系统的配置出了点问题。 这也是此处未显示的部分,因此我无法确定出了什么问题。
无论如何,您都必须确保在实例化记录器实例之前,将记录系统配置为显示级别INFO
。 在解析代码时(可能在其他一些代码导入此模块时)实例化了您的记录器。 这又意味着您必须在导入此模块之前配置日志记录系统。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.