テクノロジー

Pythonスクレイピングの導入と利用の注意ポイント

気象データの監視や研究用途、情報分析するといった際に必要なデータを収集するのにスクレイピングが活躍します。今回は、そのスクレイピングの導入・注意する点について調べました。スクレイピングをする際には気をつけることもあるので、その辺りも含め紹介します。

目次

  1. Pythonをインストールする
  2. Beautiful Soupをインストールする
  3. ページデータを取得する
  4. データを取得する
  5. 注意ポイント

Pythonをインストールする

スクレイピングするのに必要なPythonをインストールします。今回は、pyenvというpythonを複数バージョン管理できるツールを使ってインストールします。既にHomebrewなどでpythonをインストールしている方は、アンインストールしておくことをお勧めします。

pyenvをインストールする

今回、準備する環境はこちらです。

  • pyenv: v1.2.1
  • python: v3.6.0

1. Homebrewを使ってpyenvをインストールします。pipenvも人気のようで気にはなるのですが、今回は割愛します。PATH設定の部分は、.bash_profile等に書いておくことをお勧めします。

2. pyenvをインストールしたら、install コマンドを使ってpythonをインストールします。

3. アクティブなpythonのバージョンを3.6.0に切り替えます。

Beautiful Soupをインストールする

次は、取得してきたDOMデータを扱うためのPythonライブラリをインストールします。

1. pip3を使ってBeautiful Soupをインストール

2. Beautiful Soupがインストールされたか確認。エラーが生じなければインストール成功しています。

 

ページデータを取得する

次は、今取得したBeautiful Soupを使ってページデータを取得してDOMからデータを取得してみます。今回は、Yahoo! 天気からページ情報を取得します。

1. スクレイピングファイルを作成

2. 結果を表示

 

ページからデータを取得する

scraping.pyにDOM操作を追加。

2. 結果を表示

実行すると、このような感じで取得することができます。今回は1ページだけ取得対象にしましたが、複数ページから取得することもできます。

今回のサンプルコードはこちらです。
GitHub – hiro-nagami/scraping-sample/scraping01.py

注意ポイント

スクレイピングには気をつけるポイントがいくつかあります。
事件化してしまったケースもあります。Librahack

  • 実装次第では、DOSのように負荷を与えてしまう可能性がある
  • robots.txt、利用規約等に注意する
  • データの利用目的に気をつける

細かいところは、こちらのサイトが参考になると思います。
Qiita – Webスクレイピングの注意事項一覧

今回は、こちらの本を参考にしています。
PythonによるWebスクレイピング

まとめ

今回は、スクレイピング導入・注意ポイントについてまとめました。スクレイピングを利用することで、多くのデータを収集・分析して有用な情報を効率的に集めることができる強力な手法の1つです。容量・用法には注意して技術を活用しましょう。

Related post

  1. テクノロジー

    売れるiOSアプリが作れるようになるおすすめの本8選

    アプリを作ってみたいけど作り方がわからない。…

  2. テクノロジー

    CSSによるセンタリングの方法と注意点についてのまとめ

    HTMLとかCSSの勉強を始めると、divやsectionなどで作った…

  3. テクノロジー

    ReactiveXで使うStreamとObserverとは?RxJSでわかりやすく解説

    前回は、ReactiveXとは?RxJSの入門と導入手順について話しま…

  4. テクノロジー

    今週のITニュースハイライト 7/2 – 7/8

    7月2日〜7月8日に話題・気になったITニュースを紹介します。…

  5. テクノロジー

    SwiftでJSONデータを使いやすくする!Codableの使い方

    APIからデータを取得する時、JSONでデータを受け取ることがあるかと…

  6. テクノロジー

    ReactiveXとは?RxJSの入門と導入手順

    Rx (Reactive Extension)とはここ数年で話題になっ…

  1. テクノロジー

    売れるiOSアプリが作れるようになるおすすめの本8選
  2. 便利

    WiMAX 2+を3週間使って分かったメリットと制限のこと
  3. 日記

    謹賀新年。明けましておめでとうございます。
  4. テクノロジー

    iOSアプリ開発者が本当にオススメする6つの技術系サイト
  5. テクノロジー

    BeautifulSoup4でid, classを持つDOMを取得して効率化しよ…
PAGE TOP