Pythonを使ってみよう~Webスクレイピングに挑戦し初歩を学ぶ~

話題のPythonを使って学んでみましょう! 今回はWebスクレイピングにトライし、その初歩を学びます。

Pythonを使ってみよう~Webスクレイピングに挑戦し初歩を学ぶ~

Pythonの最初のバージョン(0.9)は、1991年に登場しました。C#の登場が2000年なので、Pythonの歴史は意外に古い印象です。本稿を執筆している2018年3月時点でのPythonのバージョンは3で、バージョン2とは、かなり仕様が異なります。本稿では、Python3を使用します。

さて、Pythonの特長は、簡潔な言語仕様と、学習のしやすさです。筆者は、これまでC++など、多くのコンピュータ言語を使用してきました。C++などに比べて、Pythonは同じことをするにも、少ないコード量で済み、また学習する時間も節約できます。何らかのコンピュータ言語をすでに使える人であれば、1日勉強すれば、ある程度、Pythonでプログラミングできるのでは、と感じています。今回の記事を制作するに当たって、編集の方からPython学習のコツについて聞かれましたが、とくに思い浮かばなかったほどです。

なぜ、PythonでWebスクレイピングするのか

Pythonには、Webスクレイピングをするのに便利なライブラリが、多くあります。また、言語仕様が簡潔なので、短いコード量で、目的とするWebスクレイピングのプログラムを作成できます。本稿では、実際に簡単なWebスクレイピングのプログラムを作成し、Pythonの便利さを紹介したいと思います。

さて、Webスクレイピングとは、コンピュータのプログラムでWebサイトにアクセスして、必要な情報を選別して取得することです。Webサイトから、何らかの目的に適した情報だけ取り出して、表にまとめておくようなことも可能です。

ただし、Webサイトは、ユーザーがブラウザを使って手動でアクセスすることを前提に作られています。そのため、Webスクレイピングを行う場合、次の点に注意しルールを遵守する必要があります。

■注意事項
1. 各Webサイトには、多くの場合利用規約が掲載されています。利用規約でWebスクレイピングが禁止されている場合、行わないでください。また、APIがある場合は、APIを利用するべきです。

2. Webサイトのルート直下に、robots.txtというファイルがある場合、その記述内容に従う必要があります。robots.txtには、検索エンジンなどが機械的にWebサイトにアクセスする際の制限事項が記載されています。robots.txt内の、Disallow項目には、機械的にアクセスしてほしくないパスが記載されています。例えば、エンジニアHubのrobots.txtは、次のようになっています。

1 3. 短い間隔で連続してWebサイトにアクセスしないでください。サーバーに過剰な負荷がかからないように、十分注意する必要があります。具体的なアクセスの間隔についてはさまざまな議論がありますが、最低10秒以上の間隔を空けた方がよいでしょう。上記robots.txt内のCrawl-Delayという項目に、望ましいクロール間隔が記載されていることもあります。

4. 原則的に、取得したデータは、Webサイトの所有会社(または所有者)の著作物です。Webスクレイピングで取得したデータは、著作権法に違反しない範囲内で利用しなくてはなりません。

Pythonのインストール

Python3のインストーラは、次のWebサイトから入手可能です。

このページにアクセスし、下の方にスクロールすると、Downloadsの項目があります。この中から、自環境のOSを選択して、ダウンロードします。筆者の環境である、64bitのWindows環境を例に手順をご説明します。

(1)Downloads項目内のWindowsをクリックします。

2

(2) Python Releases for Windows」のページで、「Latest Python 3 Release - Python 3.6.4」をクリックします (2018年3月の執筆時点での最新版は3.6.4です。最新のPython3を選択してください)。

3

(3)「Python 3.6.4」のページのFiles欄で、「Windows x86-64 web-based installer」をクリックして、ダウンロードしてください。

4

(4)ダウンロードしたインストーラを実行し、最初の画面で「Customize installation」を選択してください。

5

(5)「Optional Features」では、そのまま「Next」ボタンを押します。

6

(6)「Advanced Options」で、次の項目にチェックを入れます。また、インストール先のパスを指定してください。ここでは、C:\Program Files\Python36にします。

7

「Precompile standard library」は、「Install for all users」をオンにすると自動的にオンになります。

(7)インストール完了後、コマンドラインでpython ―Vを実行して、「Python 3.6.4」と表示されれば、インストール成功です。

8

Pythonの基本的なプログラム

エンジニアHubに会員登録すると
続きをお読みいただけます(無料)。
登録のメリット
  • すべての過去記事を読める
  • 過去のウェビナー動画を
    視聴できる
  • 企業やエージェントから
    スカウトが届く