Twitter REST API – TwitterOAuth を使って Twitter フォロワー一覧を取得する PHP サンプルプログラムを極力シンプルにご説明いたします。
※参考サイトは最下部にまとめております。
目次
Twitter REST API とは?
まず API とは、特定の Web サービス(Twitter)のデータにアクセスするために その Web サービス(ここでは Twitter)が用意した 関数 / ライブラリ のことです。
REST とは、API の通信方式/呼び出し方式等を定義したものです。
つまり Twitter REST API とは Twitter 社が Twitter のデータにアクセスするために用意した REST 方式のライブラリ という意味です。
TwitterOAuth とは?
PHP 言語 から Twitter REST API にアクセスするためのライブラリで、とっても簡単に Twitter データにアクセスできるようになります。
TwitterOAuth を使うには?
TwitterOAuth を使うには 以下の準備が必要になります。
- サーバーに Composer をインストールします。
- インストールした Composer を使ってサーバーに TwitterOAuth をインストールします。
- Twitter Developper サイトに登録して カスタマーキーなどの4つの認証キーを取得します。
※上記の手順はネット上に詳しく紹介したサイトが多くありますので、ここでは割愛させて頂きます。
TwitterOAuth 基本サンプル
準備が整ったら、以下のサンプルのように「定数定義」「TwitterOAuth インクルード」「TwitterOAuth クラス初期化」を書くと、Twitter データにアクセスできます。
<?php
//定数定義(Twitter Developper サイトで取得した認証キー)
define("COMSUMER_KEY", "********************");//Twitter アプリ毎
define("CONSUMER_SECRET", "********************");//Twitter アプリ毎
define("ACCESS_TOKEN", "********************");//Twitter アカウント毎
define("ACCESS_TOKEN_SECRET", "********************");//Twitter アカウント毎
//TwitterOAuth インクルード
require '/home/******/vendor/autoload.php';
use Abraham\TwitterOAuth\TwitterOAuth;
//TwitterOAuth クラス初期化
$objTwitter = new TwitterOAuth(COMSUMER_KEY, CONSUMER_SECRET, ACCESS_TOKEN, ACCESS_TOKEN_SECRET);
?>
TwitterOAuth でフォロワー一覧を取得する
Twitter データにアクセスするサンプルとして、特定のアカウント(@hogehoge)のフォロワー一覧を取得してみたいと思います。上記のサンプルに続けて このように書きます…
<?php
//パラメータの定義
$aryParameters = [
'screen_name'=>"hogehoge", //ユーザ名
'count'=>5000, //取得数
'stringify_ids'=>true, //ID を文字列で取得
];
//フォロワー一覧を取得
$objFollowers = $objTwitter->get("followers/ids", $aryParameters);
if (isset($objFollowers->ids)){//取得成功した場合
foreach($objFollowers->ids as $strFollowerIDs){
echo $strFollowerIDs . "<br>";
}
}
?>
こんな感じでフォロワー一覧を取得することができます。
参考サイト
Twitter Developper サイト
https://developer.twitter.com/
Twitter GET followers/ids
https://developer.twitter.com/en/docs/twitter-api/v1/accounts-and-users/follow-search-get-users/api-reference/get-followers-ids
PHPからTwitterを操作できる “TwitterOAuth” を使ってみよう
https://weblabo.oscasierra.net/php-twitteroauth/
用語解説
REST … REpresentational State Transfer の略
API … Application Programming Interface の略