やりたいこと
あるレビューサイトから、そのブランド毎のレビューを抜き出したい
特定のブランドによってはレビューが1000件を超えるものもあるし、ブランド自体も5000件ほどある
長丁場が想定されるため計画立てて進めよう
また次回スクレイピングを走らせたときに、最新のものが取れるような工夫をしたい
また自分のマシンからスクレイピングすると、めっちゃ熱くなったり時間がかかるので、サーバリソース上で完結できるようにしたい
あと、当然だけどサイト様への配慮は忘れない
puppeteer
GASから puppeteer in GCP Cloud Functionを発火する
clasp
始め方など
https://qiita.com/HeRo/items/4e65dcc82783b2766c03
clasp starter
計画
- ローカルでスクレイピングスクリプトを書く
- ブランドIDとページ番号を渡して汎用的に使えるものを作る
- Cloud Function化する
- インラインエディタでは辛いのでCloudSourceRepogitoriesを使う
- スクレイピングFunctionを呼ぶGASを作る
- starterkitを使わせていただく
- いい感じに遅延処理を挟まして負荷軽減考慮する
- 終わったら:まとめ記事を書く
次のステップとして、定期的にスクレイピングして最新レビューを取れるようにしたいが、サイト側がスクレイピング不可的な変更をしたとき怖いので、まずは現状あるデータを全て拝領するところをゴールにする
期間
モチベーション維持のために、作るまで40時間ぐらいでできるといいなぁ
以上