python的代码里面经常会遇到一些警告,实际上警告并不影响代码的运行,只是看起来不舒服,总觉得红色的日志打印一大堆出来,心理不踏实。
遇到警告,如果不想看到,可以忽略掉。
先看一小段代码,https的请求加上verify=False忽略SSL验证后,会出现警告InsecureRequestWarning
# 作者-上海悠悠 QQ交流群:717225969
# blog地址 https://www.cnblogs.com/yoyoketang/
import requests
r = requests.get("https://www.cnblogs.com/yoyoketang/", verify=False)
print(r.status_code)
运行结果
E:\python36\lib\site-packages\urllib3\connectionpool.py:852: InsecureRequestWarning:
Unverified HTTPS request is being made. Adding certificate verification is strongly advised.
See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning)
200
忽略警告
从上面的日志可以看出是从urllib3库发出来的结果,于是可以导入urllib3 的 disable_warnings 方法
# 作者-上海悠悠 QQ交流群:717225969
# blog地址 https://www.cnblogs.com/yoyoketang/
import requests
# 忽略警告加这2行
from urllib3 import disable_warnings
disable_warnings()
r = requests.get("https://www.cnblogs.com/yoyoketang/", verify=False)
print(r.status_code)
但并不是所有的警告都是一样,还有很多各种各样的警告。所有的警告都是来自于 warnings 模块,那么忽略掉 warnings 模块的警告就可以解决
在代码前面加上这2句就可以了
# 忽略警告
import warnings
warnings.filterwarnings('ignore')
参考代码
# 作者-上海悠悠 QQ交流群:717225969
# blog地址 https://www.cnblogs.com/yoyoketang/
import requests
import warnings
warnings.filterwarnings('ignore')
r = requests.get("https://www.cnblogs.com/yoyoketang/", verify=False)
print(r.status_code)