ますきーた

mascii(ますきー)がQiita(きーた)に書いてなかった記事を書くブログ

東電のでんき家計簿で30分ごとの電気使用量が見られるようになっていた

でんき家計簿ってなに?

東京電力Webサービスで、毎月の電気料金・使用量を確認できるものです。検針票に書いてある「お客様番号」があれば簡単に登録して利用できます。

スマートメーターに取り替えられた

3月に引っ越してきた今の物件で、5月にスマートメーターへの切り替え工事がありました(特に停電などはなかった)。

スマートメーターに切り替わると毎月の電気料金・使用量だけでなく、30分ごとの電気使用量が見られるようになると知っていたのですが、切り替わってすぐは見ることができませんでした。
久しぶりに、でんき家計簿を確認してみたところ「時間別グラフはこちら」ボタンが出現していて、見られる状態になっていました。

f:id:mascii:20180630210155p:plain:w500

前日以前のグラフを見ることができました。

棒グラフの棒にマウスカーソルをフォーカスすると、その時間帯の電気使用量(kWh)を見ることができます

f:id:mascii:20180630210451p:plain:w400

1日の電気使用量が出ていなかった

30分ごとの電気使用量が見られるようになったものの、1日の電気使用量の表示がありませんでした。48個もの値を手作業で足し算するのは辛いので、JavaScriptで計算してみました。

JSON.parse(vbar_usage_grp.toString().match(/var items = (.+);/)[1])[0].reduce(function(x,y,i){return i===0?0:(x+y)},0)+'kWh'

上記スクリプトを、でんき家計簿の時間別グラフページ上でJavaScriptコンソール開いて実行します。

f:id:mascii:20180630211322p:plain:w500

こんな感じで、1日の電気使用量の表示されます。

このスクリプトの処理内容は、vbar_usage_grp という関数の中にある items という配列(ここに30分ごとの電気使用量が格納されていた)を無理矢理取得して、総和を計算している感じです。
vbar_usage_grp 関数の中身を取得するために一旦この関数を toString() しているのですが、もっといい方法があったら教えていただきたいです。ちなみに、Internet Explorer 11でも一応動作しました。