本日はGoogleAppsScriptの話題。半JavaScriptですね。
いつのまにかGoogleAppsScriptからYoutubeAPIが叩けるようになっていたんですね。認証とかも画面でポチポチするだけでいいし、なによりコード上にKeyとかを埋め込まなくて済むようになったのはデカい。
ってことで、今まで自前でYoutube Data API v3をプログラムから叩いていたのをGASに乗せ換えてみようかと思ってみたところ、日付関連で詰まったので記事に。
ことのきっかけ
YoutubeAPIを叩いているときに、投稿日時(publishedAt)がISO8601とRFC3339での表記方法で返ってくるので、画面表示するときにUTCでなくJSTに、そしてTとかZとかを取り除きたいと思ったのがきっかけ。
やりたいこと
2018-09-27T09:00:02.000Z
の日付形式を2018-09-27 18:00:02
と、フォーマットを変える+日本時間(JST)で表示したい。
やり方
Utilities.formatDateでフォーマット変換してあげれば解決。
publishedAt = '2018-09-27T09:00:02.000Z'; Logger.log('pulishedAt : %s', publishedAt); var publishAtJST = Utilities.formatDate(new Date(publishedAt), "JST", "yyyy-MM-dd HH:mm:ss"); Logger.log('publishAtJST: %s', publishAtJST);
実行結果
[18-09-30 09:48:59:628 JST] pulishedAt : 2018-09-27T09:00:02.000Z [18-09-30 09:48:59:629 JST] publishDate : 2018-09-27 18:00:02
まとめ
日付関連はしょっちゅう出てくるわりによく忘れるので記事にしておきました。
あとはこれをSpreadSheetに書き込んでごにょごにょとすればよい。
本当は載せ替えとかしたくないんだけど、既存で作った動画まとめがなぜか表示されなくなっていて原因を追究するのも面倒なので新しく一新しようかなと思って始めました。
今日中にどうにかできるといいけど。
それではまたー。