如今selenium已经弃用PhantomJS,每次程序执行都弹出这条警告信息
UserWarning: Selenium support for PhantomJS has been deprecated, please use headless versions of Chrome or Firefox instead
warnings.warn('Selenium support for PhantomJS has been deprecated, please use headless ’
平时一些需求还是会用到PhantomJS,反复弹出比较烦
解决办法:
直接忽略这条警告
import warnings
warnings.filterwarnings("ignore", message=".*PhantomJS has been deprecated.*", category=UserWarning)
这样就不会弹出警告信息了。
解析:
warnings.filterwarnings
warnings.filterwarnings(action, message=’’, category=Warning, module=’’, lineno=0, append=False)
警告过滤器用于控制警告的行为,如忽略,显示或转换为错误(引发异常)。警告过滤器维护着一个有序的过滤规则列表,匹配规则用于确定如何处理警告,任何特定警告都将依次与列表中的每个过滤规则匹配,直到找到匹配为止。过滤规则类型为一个元组 (action,message,category,module,lineno),其中:
- action 为以下值:
“error” 将匹配警告转换为异常
“ignore” 忽略匹配的警告
“always” 始终输出匹配的警告
“default” 对于同样的警告只输出第一次出现的警告
“module” 在一个模块中只输出第一次出现的警告
“once” 输出第一次出现的警告,而不考虑它们的位置 - message 是包含正则表达式的字符串,警告消息的开始必须匹配,不区分大小写
- category 是一个警告类型(必须是 Warning 的子类)
- module 是包含模块名称的正则表达式字符串,区分大小写
- lineno 是一个整数,警告发生的行号,为 0 则匹配所有行号