やりたいこと
タニタさんの体重計には、日々のデータをBluetoothでスマホに送信し、それをHealth Planetというっサービスに保存、参照することができる機能がある。これ自体は素晴らしいのだが、いくつか欠点がある。
- アプリでは過去1年間分のデータしか参照できない
- ウェブ)ではさらに昔までさかのぼれるが、グラフでは見れず、各日のデータとして見るしかない
- それをエクスポートできない※1
※1については、提携しているサービスには渡すことができるが、正直聞いたことない国産のサービスばかりで、あまりやろうと思わない…。またAPIが用意されているが、なんと体重と体脂肪率しかエクスポートできない。筋肉量、基礎代謝、体内年齢など有益な情報があるにも関わらず。正直ここを絞る意味がまったく分からない。
エクスポートできないと、万一サービス終了すると永久に失われるし、そもそも長期間の変遷をグラフで見れないのはもったいないので、データを回収したい。
ただ1ページずつメモっていくなんてありえないので、スクレイピングすることにする。
スクレイピングやってもいいのか
一応Health Planetの利用規約やrobots.txtを確認している。もちろんOKとは書いていないが、NGとも書いてない認識なので、グレーゾーンと思っている。
対応
最終結果
手動で書き換える部分が残っていてあまりいいコードではないが、こちら。