Google+ 非公式 API で情報を取得するPHPライブラリを使ってみた – Shin x blog

まだ登場していない Google+ の API ですが、非公式な API を利用して情報を取得するライブラリがあったので使ってみました。

Google+のストリーム で教えて頂いた php-googleplusapi というライブラリで github で公開されています。

はじめは README に従って、MySQL の設定などしたのですが、Google+ から情報を取得するだけなら、DB の設定は不要です。

付属のサンプルソースだと色々な処理が入っているので、直近10件の投稿を取得する単純なサンプルを書いてみました。

<?php
require_once(‘lib/GooglePlus/GoogleUtil.php’);

define(‘GPLUS_ID’, ‘GOOGLE PLUS ID’); // Google+ ID を入れる

//$ret = GoogleUtil::FetchGoogleJSON($url);
$ret = json_decode(GoogleUtil::CleanGoogleJSON(file_get_contents($url)));

$posts = $ret[1][4][0];
foreach ($posts as $post) {
  //var_dump($post);exit;
  // 3: 名前
  // 4: 本文(HTMLタグ)
  // 73.16: +1
  // 21: permlink
  // 25: share(0:氏名、1:gplusId)
  // 47: share時コメント
  echo ‘name=’.$post[3].PHP_EOL;
  echo ‘share post=’.$post[47].PHP_EOL;
  echo ‘post=’.$post[4].PHP_EOL;
  echo ‘+1=’.$post[73][16].PHP_EOL;
  echo ‘share=’.count($post[25]).PHP_EOL;
  echo PHP_EOL;
}

 

実行すると以下のように投稿を取得できます。

$ php gplus_fetch_posts.php

 

name=Masashi Shinbara
share post=触ってみて分かったこと。<br><br>・このライブラリは取得のみ。<br>・Google+ ID を指定して、プロフィール取得、直近10件?の投稿が取得可能。<br>・+1 や Share された数も取れる。<br>・他にもいくつか情報が取れそう。<br><br>取れるのは API 使わずとも、という内容だけど、とりあえず動いた。<br>通知系が取れたら嬉しいけどなー。
post=Google+ 非公式 API を使った PHP ライブラリを試してみた。<br />とりあえず投稿は取得できてる。<br /><br /><br />https://github.com/jmstriegel/php.googleplusapi
+1=12
share=3

 

name=Masashi Shinbara
share post=
post=Google+ 非公式 API を使った PHP ライブラリを試してみた。<br />とりあえず投稿は取得できてる。<br /><br /><br />https://github.com/jmstriegel/php.googleplusapi
+1=16
share=22

 

name=Masashi Shinbara
share post=
post=「チラ裏」という言葉があるが、そのうち「ゼロサー」という言葉ができるかもしれない。<br /><br /><br />ゼロサー =「ここはお前の日記帳じゃないんだ、0人サークルにでも書いてろ、な?」
+1=5
share=1

 

name=Masashi Shinbara
share post=
post=Google+APIのML追加申請フォーム、らしいです。<br />https://services.google.com/fb/forms/plusdevelopers/<br /><br />公式APIは未完成ってことでいいのかな。非公式APIってのも見つけたんですが、誰か使ってみた方いらっしゃいますか?<br />https://github.com/jmstriegel/php.googleplusapi
+1=1
share=3

 

name=Masashi Shinbara
share post=
post=Mac でドキュメント(システム仕様書等)書く時ってみんな何使ってるんでしょ。<br /><br />Windows では、Word / PPT / Visio で書いてたので、<br />Mac に移行した今でも結局 vmware の Windows で書いてます。<br /><br />Office for Mac 使ってる人多いのかな。
+1=2
share=0

 

name=Masashi Shinbara
share post=これはいい
post=<b>Google+ appears to have drawn lessons from the experience in both Facebook and Twitter. So, excluding the fact your existing contacts are already in Facebook and Twitter, there is a nice blending of the features from both social networks in Google+</b>.<br /><br />The table below highlights where Google+ is like either Facebook or Twitter. Take a look:
+1=9
share=13

 

name=Masashi Shinbara
share post=
post=ちょっと前に出てた NFC タグから読み取ったテキストを<br />Google+ アプリから投稿する動画。<br /><br />これはなかなか面白いなー。
+1=5
share=0

 

name=Masashi Shinbara
share post=
post=事務所の近くに MBS があります。<br />今日は子供がいっぱい。
+1=3
share=0

 

name=Masashi Shinbara
share post=
post=カレーうどん。<br />今日は白シャツだから気をつけないと。
+1=7
share=1

 

name=Masashi Shinbara
share post=
post=au の Windows Phone 機、発表会。「気持ち良い」ばかり。
+1=2
share=0

 

 

他にはプロフィール情報が取得できました。(そもそも、↑のサンプルソースはプロフィール情報に含まれている投稿を出力しています。)全部は見ていないので興味ある人は他に何が取れるか試してみて下さい。

通知系が取れると面白かったのですが、まだこのライブラリではできませんでした。

まあ、こういった内容なら API を使わずともスクレイピングで取得できるのですが、いちおう Google+ から JSON でデータを取得しているので、API の雰囲気は味わうことができます:D 早く正式版の API が登場してほしいですね。

 

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中