【python】如何去掉使用BeautifulSoup读取html出现的警告UserWarning: You provided Unicode markup but also provided a value for from_encoding

如果我们这样读取html页面

soup= BeautifulSoup(rsp.text,'html.parser',from_encoding='utf-8')  # 粗体部分多余了

就会出现下面的警告:

UserWarning: You provided Unicode markup but also provided a value for from_encoding. Your from_encoding will be ignored.
warnings.warn("You provided Unicode markup but also provided a value for from_encoding. Your from_encoding will be ignored.")

当然这警告不影响程序运行,但是控制台输出非必要信息也影响视线。

出现这问题的原因是python3 缺省的编码是unicode, 再在from_encoding设置为utf8就多余了, 会被忽视,然后系统给出警告信息。

解决方法也容易,去掉“from_encoding="utf-8"”这一个好了,如下所示:

soup= BeautifulSoup(rsp.text,'html.parser')

以上程序的实验环境是 Python 3.6.4

原文地址:https://www.cnblogs.com/heyang78/p/8805687.html