📥

TypeScript でGoogle Apps Script(GAS)を書く

2022/12/16に公開

GitHubにコードがあります。

https://github.com/OHMORIYUSUKE/clasp-template

このテンプレートには、TypeScriptでGoogle Apps Scriptを書くために必要なものが準備されています。また、npmパッケージも使えるようにしました。

使い方

  • GoogleドライブにGoogle Apps Scriptを作成し、URLの中のスクリプトIDを取得します。

URL
https://script.google.com/home/projects/1MZwtQ5auHktH5Ds3z8k-bBTZOgNisqSdDfq4wC8SEI0oPRZLPPkF4HJz/edit

スクリプトID
1MZwtQ5auHktH5Ds3z8k-bBTZOgNisqSdDfq4wC8SEI0oPRZLPPkF4HJz
  • スクリプトIDを.clasp.jsonに書きます。
.clasp.json
{
  "scriptId": "スクリプトID"
}
  • npm installnpx clasp login(Googleログイン)、npm run buildnpm run deployでデプロイできます。

今回作ったもの

GASでRSSを取得し、スプレッドシートに書き込むコードを書きました。

コードです。
https://github.com/OHMORIYUSUKE/ci-en-rss

詳細

Ci-enのRSSを取得し、ただシートに書き込みます。

詰まったところ

rss-parser

RSSを取得するために、rss-parserを使おうと思い導入しましたが、GASでは動作しませんでした。

原因は、httpのパッケージが利用できなかったことが原因でした。そもそも、httpリクエストを送るにはUrlFetchAppをGASでは使うらしいのでUrlFetchAppを使いました。

fast-xml-parser

https://github.com/NaturalIntelligence/fast-xml-parser

今回は、fast-xml-parserを使ってXMLからデータを取得しました。

終わりに

次は、アイデアが思いつかず何とか作りました。

Discussion