こちらの勉強会に参加してきたのでメモ
概要
Pythonでクローラを作りましょうという内容。
スライドで表示されるコードをJupyterに写経して実行してくスタイルでした
Jupyter を使用するためanacondaを入れといてくださいということだったのかな
使用ライブラリ
- requests
- BeautifulSoup
- html5lib
- pandas
クローラ作成の流れ
- データを抽出したいページを取得・保存 -> requests,
- ページのDOMツリーを確認する -> ブラウザのソースを確認する。ここが難しいのかなと
- 欲しいデータを抽出する -> BeautifulSoup。表形式データならpandasが便利
注意点
- APIがあるならそれを使う
- 利用規約を確認する
- robots.txtを確認する
- サイトに負荷をかけないようにアクセスする
良かったこと
勉強会の中では、Yahoo!ファイナンスの日経平均株価データを取得したのですが、「次へ」のリンクのURLを取得して行けばいいですよーって話でした。今思えば当たり前ですが、そこら辺何故か自分は自力で気が付かなかったのでよかったです。
あとはJupyterを初めて使ったのですが、噂通り、メモ帳としてはいいですねこれ
会場内で起こったこと(エラーとその対処)
このままではただの日記なので、ちょっとは技術的なことも書いておきます。
- BeautifulSoupのインポートでエラー
- BeautifulSoupを呼び出したところでエラーが発生するのですが、原因はhtml5libのバージョンとの相性でした。バージョン指定して再インストールで解決。もともといれたのはBeautifulSoup(4.4.1)とhtml5lib(0.999999999)でした。
- !pip install --upgrade html5lib==1.0b8