如果我們這樣讀取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
