chrome blog

Chromebookとか、ライフハックとか

(Python3) ModuleNotFoundError: No module named 'urllib2' の対処法

エラー内容

python3でurllib2をimportしようとすると、

ModuleNotFoundError: No module named 'urllib2'

が発生する

原因

urllib2はpython2での書き方で、python3では分割されたモジュールをimportする必要があるらしい。

# import urllib2        # こっちはpython2の書き方
import urllib.request   # こっちがpython3

解決サンプル

コード

import urllib.request
from bs4 import BeautifulSoup

url = "http://example.com";
html = urllib.request.urlopen(url);
soup = BeautifulSoup(html, "html.parser")
alist = soup.find_all("a")
print(alist)

実行結果

$ python3 sample.py 
[<a href="http://www.iana.org/domains/example">More information...</a>]

参考URL

雑感

機械学習関連でプログラミング言語pythonが話題になってるけど、 個人的にはWebスクレイピングで使えそうなのでいじってみた。 しょっぱなからpython2とpython3のバージョン差で面食らったのでメモメモ(;´・ω・`)φ