No module named 'cookielib'或No module named 'urllib2'或raw_input

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"

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章