darudaru

だるだるしてるエンジニア

GoogleAnalyticsから1週間のPV数を取得するCLIを作ってみた

このブログのPV数を確認するときに、はてなのアクセス解析を開いたり、Google Analyticsの画面を確認したりするのですが、いちいちブラウザ立ち上げて画面開いてーという動作がめんどくさいなと感じてきたので、ターミナルからPV数を確認できるCLIツールを作りました。
言語は勉強中のNode.jsを使いました。

github.com

事前準備

  • Google Analyticsからデータを取得するために、GoogleのAPIのReporting API v4を有効にする。有効にしたあとは、認証情報のjsonファイルをローカルの任意の場所にダウンロードしておく。*1
  • Google Analyticsのアカウントに、認証情報のjsonファイルに記載のメールアドレスを追加する。*2
  • PV数を取得したいサイトのGoogle AnalyticsのビューIDをメモしておく

インストール

npmに公開しているので、下記コマンドでインストールできます。

$ npm install --global ga-reporter

使い方

ga-reporterと叩くだけ。

$ ga-reporter
┌──────────┬───────────┐
│ Date     │ PageViews │
├──────────┼───────────┤
│ 20180626 │ 24        │
├──────────┼───────────┤
│ 20180625 │ 82        │
├──────────┼───────────┤
│ 20180624 │ 63        │
├──────────┼───────────┤
│ 20180623 │ 48        │
├──────────┼───────────┤
│ 20180622 │ 46        │
├──────────┼───────────┤
│ 20180621 │ 78        │
├──────────┼───────────┤
│ 20180620 │ 93        │
├──────────┼───────────┤
│ 20180619 │ 104       │
└──────────┴───────────┘

※上記の数値はダミーです

最初にga-reporterを実行すると、認証情報のjsonファイルのパスとGAのビューIDの入力を求められるので設定をしてください。以降はga-reporterを実行してもこの作業は発生しません。

$ ga-reporter                                                                                 
? Enter your client_secrets.json's path: /home/username/client_secrets.json
? Enter your a viewID: 123456

もし入力内容を間違えた場合は-dオプションをつけて設定を削除して、再度ga-reporterを実行して設定し直してください。

$ ga-reporter -d

まとめ

コマンドを1つ叩くだけで見られるようになって楽になりました。

あと、ツールを作ってみて困ったこととしては名前です。
最初にツールの名前を決めて、その名前でリポジトリも作って開発をしていたのですが、いざ公開しようとしたときにnpmにすでに存在していて、ツールの名前を変更しなくてはいけなくなりました。名前を変える作業が地味に手間がかかった。
名前をつける前に最初にその名前が使われていないかを調べておくことを学びました。