Pythonでurllib2を使ってインターネット上のリソースを取得する方法
提供: Python入門
2015年1月5日 (月) 13:14時点におけるDaemon (トーク | 投稿記録)による版 (ページの作成:「urllib2 とは、URLで表されるインターネットのリソース(コンテンツ)を取得するためのPythonモジュールです。 '''読み方''' ;url...」)
スポンサーリンク
urllib2 とは、URLで表されるインターネットのリソース(コンテンツ)を取得するためのPythonモジュールです。
読み方
- urllib2
- ゆーあーるえる りぶ つー
目次
概要
urllib2を使って、ウェブサーバからコンテンツを簡単に取得できます。 urllib2は、いくつものURLスキームををサポートしています。HTTP以外にFTPにも対応しています。 なので
ftp://foo.org/
のようにすれば、ftpでアクセスすることもできます。
Python2では、urllib2を使えばよいですが、Python3では、urllib.requestを使用します。
ソースコード
Python2 向け urllib2_get_http_content.py
ここでは、Yahoo! JAPAN のサイトのページコンテンツを取得し、表示するプログラムを紹介します。取得したHTMLがそのまま表示されます。
#! /usr/bin/env python # -*- coding: utf-8 -*- # vim:fenc=utf-8 # # Copyright © 2015 kaoru <kaoru@bsd> """ """ import urllib2 url = 'http://www.yahoo.co.jp/' response = urllib2.urlopen(url) html = response.read() print html
実行例
$ python urllib2_get_http_content.py
エラー
No module named urllib2 となってしまったとき
urllib2 がないときに、以下のエラーになります。
import urllib2 ImportError: No module named 'urllib2'
問題の行は、下記の行です。
import urllib2
urllib2 のかわりに urllib.request を使用すれば良いので、ソースコードを書き換えてもいいのですが、urllib2 があちこちに書かれていると修正に時間がかかります。短期間で、応急処置をしたい場合には、 urllib.request を urllib2 として import します。
try: import urllib.request as urllib2 except ImportError: import urllib2
関連項目
- Pythonでurllib2を使ってインターネット上のリソースを取得する方法
ツイート
スポンサーリンク