2017年8月28日月曜日

とあるサイトをスクレイピングして、スプレッドシートにデータを貯めたい的なお話google sheet api v4

  • このエントリーをはてなブックマークに追加

よくあるデータ抽出とかって手動だとかなり面倒だし時間かかるわけで。
何十件集めるだけで1時間かかるとかざらだし、
既存の入力した内容と照らし合わせると時間もさらにかかるわけで。

それをプログラムでちゃちゃっとできないかな?っていうわけで。
なので今日はgolangでスクレイピングしつつ、スプレッドシートにデータを貯めて諸々やる的なお話をば。

今回使ったpackageはこちら。
スクレイピング:PuerkitoBio/goquery
スプレッドシートAPI(google api client):google/google-api-go-client

とりあえずの大まかな流れ。
1:スプレッドシートにすでに入力されているデータを取得
2:除外したいデータを入力したシートからデータを取得
3:ページをスクレイピング
4:スクレイピング結果をスプレッドシートに送信
ってな感じ。

長いから説明省くけど、一番下に載せてる感じ。
ちなみにspreadsheet.goにfindは余裕でAPI制限に引っかかるから使わないで、
sqliteを使っているけどそれも載せるとやばい分量になるから載せないよ的な。

これでやればサーバを用意してあげるとか必要ないから楽で便利だよね的なみたいな。

Adsense