はじめに
Google+ APIを触ってみたのですが、割りとハマってしまったので、APIを使うまでの手順を自動化してみました。
認証に必要なシークレットIDなどを含む情報は、jsonをダウンロードしてきます。
jsonのダウンロードは、手動で行わなければなりませんが、ほぼ自動でGoogle+ APIが使えるようになります。
割と雑に作ってあるので、できなかったら言ってくださると嬉しいです。
airgoogleplus
インストールと実行
git clone https://github.com/syui/airgoogleplus
cd !$:t
./airgoogleplus
ブラウザは、Google Chrome
が使用されます。
ツール
必要なツールはいくつかありますが、自動ダウンロードされるようにしておきました。
自動ダウンロードされるのは、以下のツールです。ダウンロードされる場所は、airkeepass/tool/
です。
ただし、jq
は、自分でインストールしてください。
基本手順
$ ./airgoogleplus gplus-a
または、
ブラウザが開かれますが、そこで、jsonをダウンロードします。ダウンロードフォルダがデフォルトから変更されている場合は、ダウンロードしたjsonファイルをairgoogleplus/text/
に置きます。
ちなみに、承認後に特定のURLに飛ばされます。
これは正しい表示です。このURLのcode=
以降の部分がアクセストークンの取得に必要な値になります。
ブラウザでの承認やページが飛ばされた後には、Enter!
という表示に従ってください。
コマンド
コマンド | 内容 |
---|---|
gplus-a | 認証からAPIを使うまでの自動化 |
gplus-m | APIでできることを一覧表示 |
gplus-o | OAuth 2.0での認証 |
gplus-j | プロフィールを取得 |
gplus-f | フォロワーを取得 |
gplus-u | URLを渡す |
gplus-d | 個人ファイルの削除 |
gplus-e | 終了 |
認証後は、Google+のAPIを使えるようになります。メニューを使うことをおすすめします。
$ ./airgoogleplus gplus-m
注意点
Google+ APIでは、1回での取得数が制限されていることが通常です。よって、すべての情報の取得は、pageToken
を使います。
pageToken
を使った継続処理は、考慮していませんが、script/googleapi_page_token_test.sh
のスクリプトでテストしてみました。参考にしてみてください。
$ curl -H "Authorization: Bearer $access" $url | jq .nextPageToken | curl -H "Authorization: Bearer $access" $url
参考
Google+ API - Google+ Platform — Google Developers