1. ModuleNotFoundError: No module named 'cookielib'
Python3中,import cookielib改成 import http.cookiejar,然后方法里cookielib也改成 http.cookiejar。
2. ModuleNotFoundError: No module named 'urllib2'
Python 3中urllib2用urllib.request替代。
在Python官方文檔里面已有說明:
Note:
The urllib2 module has been split across several modules in Python 3.0 named urllib.request and urllib.error. The 2to3 tool will automatically adapt imports when converting your sources to 3.0.
from urllib.request import urlopen
response = urlopen("http://www.google.com")
html = response.read()
print(html)
3. NameError: name 'raw_input' is not defined
Python 3中用input()替換raw_input()
4. 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, 會被忽視。
Python 3中soup = BeautifulSoup(html_doc, "html.parser", from_encoding="utf-8")這一句中刪除from_encoding="utf-8"
------------------------------------------------------Tanwheey-------------------------------------------------------------------------
愛生活,愛工作。