LCLの開発者ブログ2018-11-30Node.jsでGoogleスプレッドシートを操作するNode.jsWebエンジニアの川辺です。スプレッドシートを操作する際に使用したnode-google-spreadsheetの紹介をしたいと思います。2.0.6準備コード上からGoogleスプレッドシートを操作するため、シートへアクセスを許可するための準備が必要です。それでは順を追って進めていきます。プロジェクトを作成アクセスを許可するための認証情報を作成するためにまずプロジェクトを作ります。アクセスし「プロジェクトを作成」をクリックしブロジェクトを作成します。プロジェクトを作成するとこの画面が表示されます。プロジェクトが複数ある場合は今回作成したプロジェクトに切り替えてください。APIを有効化します。ライブラリ一覧ページを開きます。Drive」を検索して選択します。「有効にする」ボタンをクリックします。最後に認証情報を作成します。先ほどあった「ライブラリ」の項目の下にある「認証情報」をクリックします。各項目を入力して作成ボタンをクリックします。役割:Project→オーナーキーのタイプ:JSON認証情報の作成が完了すると秘密鍵が保存されます。今回は取り扱いしやすくするためにファイルを「google-generated-creds.json」にリネームします。ファイル内に「client_email」という項目があるので、そのメールアドレスを操作したいスプレッドシートの共有設定に追加します。以上で準備は終了です。ここからコードの実装に入っていきます。コードの実装ディレクトリを作成して必要なパッケージをインストールします。async先ほどダウンロードした「google-generated-creds.json」をディレクトリに移動します。次にメインの処理となるindex.jsを作成します。今回は以下のスプレッドシートの内容を取得してみたいと思います。GoogleSpreadsheetの引数にはスプレッドシートのURLの以下の部分を入れます。node.jsを実行するとコンソールにログが表示されました。150円これらの値はnode-google-spreadsheetのgetCellsメソッドで取得しています。getCellsメソッドでは取得する範囲を指定するためにmin-rowとmax-rowに数値を設定していますが、この値はインデックスではなく行番号を指しているので注意が必要です。このメソッドは指定した行と列の全てのCellを取得する仕様なため、大抵の場合はループやフィルタ処理などで必要なデータを抽出する必要がありそうです。「列数」分の配列が入っています。},]rowやcolの値もあるので、以下のように行や列ごとの値の配列を抽出したりすることもできます。]行のみを取得する場合はgetRowsメソッドを使用できます。特定の列に含まれる行(=セル)を取得する要件の元で扱うには、getCellsメソッドの返り値とは違いランダムなKeyが割り当てられる仕様となっているため取り扱い方に課題がありました。...},...終わりに今回は導入編ということで簡単な操作しかしませんでしたが、コードでスプレッドシートが操作できるようになれば色々な作業が捗るようになると思います。ちなみに弊社では以前のブログにも書いたPuppeteerのE2EテストでアクセスするURLを参照するのに使用しました。工夫次第で色々と活用できると思うのでぜひ試して見てください。qiita.com...2019-02-14最近1ヶ月間で行ったフロントエンド開発環境プチ改善フロントエンドエンジニアの岡田です。ChatWorkでちょっと面倒な日々のタスクを自動化するフロントエンドエンジニアの岡田です。1検索はてなブログをはじめよう!lcl-engineerさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。