【Python】ローカルに保存したファイルをスクレイピングする方法

ぜひ読んでほしい方

 ・スクレイピングをサイトに負荷をかけずに行いたい方
 ・サイトのソースコードを見たい、あるいはローカルに保存したい方

ローカル環境でスクレイピングするメリット

 スクレイピングしたいサイトのソースをローカルに保存してからスクレイピングすることのメリットは、サイトに負荷をかける心配がないということです。

 スクレイピングをすること自体はなんら違法ではありませんが、スクレイピングしたことにより相手(そのサイトの運営者)のサーバーに負荷をかけると、最悪訴訟に発展したりするので注意が必要です。実際に、過去に不起訴にはなったものの訴えられた事例もあるそうです。

ローカルにファイルを保存する

 ローカル環境でサイトをスクレイピングするためには、そのソースコードをローカル環境にダウンロードする必要がありますので、その方法を説明します。

 まず、スクレイピングしたいサイトを開き、右クリックします。そしたら、ページの「ソースを表示」をクリックします。

すると、下の画像のようなページが表示されるかと思いますので、右クリックして「名前を付けて保存」をクリックします。

保存先はどこでも問題ありませんが、スクレイピングに使うpythonソースコードと同じディレクトリにするのがおススメです。

ローカルファイルをスクレイピングするコード

 今回は、requestsとBeautifulSoupを使ってスクレイピングするのを想定して説明します。 

 ローカルファイルをスクレイピングする場合と、そのままサイトをスクレイピングする場合とで変わるのは1か所だけです。

 まず、サイトをそのままスクレイピングする場合は、以下のようなソースコードになると思います。

 これに対し、ローカルファイルをスクレイピングしたい場合は、上の部分を以下のように変更します。