day25:APIからいいね画像データを取得する
2020-12-24
# advent

APIからいいね画像データを取得するところまで

GASとtwitterAPIを連携

GASでTwitterAPIを叩いてみる

このあたりを参考に進める。twitterAPIが新仕様になっていたので色々と手間取った。

callbackURLはアプリのSetting -> Authentication settings で設定できる。

GASでWebAPI公開

今から10分ではじめる Google Apps Script(GAS) で Web API公開

doGetが動かん......と色々調べていたら、版管理で保存する必要があるらしかった。プロジェクト公開時にバージョンを指定しているし、よく考えたら当たり前である。

いいね画像データを取得

レスポンスデータを睨みつついいねした画像データのみを取得するコードを書いていく。雑だがとりあえずこれで動いた。

getiine.gs

array.forEach((tweet)=>{    
  if (tweet.entities.media){
    if(tweet.entities.media[0].type == "photo"){
      if (!tweet.entities.media[0].media_url_https.includes('video_thumb')){
        images.push(tweet.entities.media[0].media_url_https)
      }
    }
  }
})

ツイート取得限界が200件なのだが、色々と工夫すればもっと多く取得できるので対応したい。あとは指定ユーザーのいいね欄を取得できるように、あとレスポンシブ対応、画像にツイへのリンク付与、パフォーマンス改善、リファクタリング............。

完成までまだまだかかりそうだ。