Google Calendarからデータ(予定)をダウンロードする
自分のプロジェクトで使う専用のカレンダーを作る
自分のGoogleのアカウントを使って、Google Calendarにログインします。画面左側のバーの「Other Calendars」のところにある「+」をクリックします(以下写真の中の赤丸)。そして「Create new calendar」を選びます。
Calendar settingsの画面で、自分の新しいカレンダーに名前をつけます。名前は何でも構いません。以下の写真では「test」という名前にしています。
そして、「Make available to public」にチェックを入れます(上の写真の中の赤く囲ったところ)。こうすると、このカレンダーへのリンクを持っている人は、カレンダーの中身を見れるようになります。なので、そのリンクを誰ともシェアしないようにしてください。
また、この画面の下の方に、「Calendar ID」というセクションがあります。そのカレンダーIDをどこかにコピペして(例えばThonnyにコピペして)、後で使えるようにしておいてください。カレンダーIDは、ランダムな文字列の後に「@group.calendar.google.com」が付いたフォーマットになっていると思います。
最後に、今新しく作ったカレンダーに、今日の日付で何か適当なイベント(予定)を追加して下さい。このイベントを後で使います。このイベントは、「今新しく作ったカレンダーに」追加しなければいけません。この点に注意してください。
Google Calendar APIを使えるようにする
ブラウザでGoogle Cloud Consoleにアクセスします。自分のGoogleのアカウントでログインしている状態になっていると思いますが、そうなっていなかったらログインしてください。ログインしている状態かどうか確認するには、画面右上のアイコンをクリックすると分かります(下の写真で赤く囲ったところ)。
画面上のsearch boxに「google calendar」とタイプすると、「Google Calendar API」というサジェスションが出てくるので、それをクリックします(以下写真参照)。
次の画面で「Enable」ボタンをクリックします(以下写真参照)
そして、次の画面で、画面左側にある「Credentials」をクリックします(以下写真参照)。
次に、画面上の「Create credentials」をクリックし、「API key」を選びます(以下写真参照)。
これでAPIキーが作られます。そのAPIキーをどこかにコピペして(例えばThonnyにコピペして)、後で使えるようにしておいてください。
Pythonのプログラムからカレンダーのイベント(予定)をダウンロードする
ラズパイのTerminalで、以下の2つのコマンドをひとつづつ順番に実行して下さい:
sudo pip3 install google-api-python-client google-auth-httplib2 google-auth-oauthlib
sudo pip3 install python-dateutil
そして、gcal.pyをThonnyで開いて、以下の部分にAPIキーとカレンダーIDをコピペして下さい("
と"
の間にコピペする)。
API_KEY = ""
CALENDAR_ID = ""
このプログラムを実行すると、今日のイベント(予定)がプリントされます。これは、先ほどカレンダーに追加したイベントです。