Muni Bus

パソコンの操作方法や設定方法を忘れないようにメモしています。ブログを一回引っ越ししているので、所々表示がかなり乱れています・・・

【R】ウェブサイト(ホームページ)のウェブページをテキスト形式(HTML)でダウンロードする

ウェブサイト(ホームページ)のウェブページを、テキスト形式(HTML)で簡単にダウンロードすることができる。

download.file関数を使用する。以下の例では、ヤフーのウェブサイトのトップページを、テキスト形式でダウンロードしている。

> download.file("http://www.yahoo.co.jp/", "y.html")
URL 'http://www.yahoo.co.jp/' を試しています
Content type 'text/html; charset=UTF-8' length unknown
downloaded 19 KB

ただし、これはそのアドレスで表示されるウェブページを、テキスト形式でダウンロードするだけに過ぎないことに注意。この例では、ヤフーのトップページには動的なコンテンツが含まれているため、そのHTMLファイルをブラウザで開いても、きれいに表示されない。

存在しないアドレスを指定すると、エラーが発生する。

> download.file("http://www.yahoo.co.jpp/", "y.html")
URL 'http://www.yahoo.co.jpp/' を試しています
download.file("http://www.yahoo.co.jpp/", "y.html") でエラー:
URL 'http://www.yahoo.co.jpp/' を開けません
追加情報: 警告メッセージ:
download.file("http://www.yahoo.co.jpp/", "y.html") で:
cannot open URL 'http://www.yahoo.co.jpp/': HTTP status was '503 Service Unavailable'

動作時にメッセージを表示させないようにするためには、quietオプションをTRUEにする(デフォルトはFALSE)。

> download.file("http://www.yahoo.co.jp/", "y.html", quiet = TRUE)

quietオプションをTRUEにしても、エラーが発生すると、メッセージは表示される。

> download.file("http://www.yahoo.co.jpp/", "y.html", quiet = TRUE)
download.file("http://www.yahoo.co.jpp/", "y.html", quiet = TRUE) でエラー:
URL 'http://www.yahoo.co.jpp/' を開けません
追加情報: 警告メッセージ:
download.file("http://www.yahoo.co.jpp/", "y.html", quiet = TRUE) で:
cannot open URL 'http://www.yahoo.co.jpp/': HTTP status was '503 Service Unavailable'