はじめに
備忘録です
そもそもクローラーとは
- WEB上の情報を取得するプログラムの事
- クローリングとはウェブページをたどって次々とデータをダウンロードすること
- ウェブサイトの特徴に合わせたクローラーを作成する必要がある
クローラーの種類は3種類
- 状態を持つクローラー
- JavaScriptを解析するクローラー
- 不特定多数を対象とするクローラー
状態を持つクローラーの作り方
状態を持つクローラーとは、cookieとかをつかうサイトに必要!
作り方
- RequestsのSessionオブジェクトを使用する
- サーバーからもらったcookieを保存して、次回以降のリクエストを出す時に一緒に送信してくれる。
- または、、Referer
- ひとつ前に見ていたサイトのURLをサーバーに送るHTTPヘッダー
- これをもとに処理を決定するウェブサイトがあるらしい
- ひとつ前に見ていたサイトのURLをサーバーに送るHTTPヘッダー
JavaScriptを解釈するクローラーの作り方
JavaScriptで作られているウェブサイトをクローリング&スクレイピングするときに必要
- 直接、ウェブブラウザを操作する
- 使用ツール
- Selenium
- Puppeteer
- chromeやfireboxのヘッドレスモード
- 普通とは違うモードで操作できるみたいだ
- CUIで動かす
不特定多数のウェブサイトを解析するクローラーの作り方
分からん
めっちゃ難しいっぽい
参考文献
加藤耕太さん「Python クローリング&スクレイピング」