【Twitter API】投稿を取得するPHPスクリプトの例|TwitterOAuth
今回は、PHPのTwitterOAuthライブラリでTwitter APIを利用し、指定したアカウントの最新投稿を配列で取得する例となります。
TwitterOAuthを利用し、指定したアカウントの投稿を取得する例
以下の例では、コマンドラインからPHPスクリプトを実行し、指定したアカウントの最新投稿を配列で取得します。
Twitter APIの認証情報を確認
APIを利用するTwitterアカウントで Twitter Developers にログインし、追加したAppの「Keys and tokens」画面で、以下の認証情報を確認します。
- Consumer Key
- Consumer Secret
- Access Token
- Access Token Secret
TwitterOAuthをComposerでインストール
まずは、プロジェクトのフォルダを作成します。
そして、ComposerでTwitterOAuthをインストールするため、プロジェクトのルートディレクトリにcdコマンドで移動し、以下のコマンドを実行します。
composer require abraham/twitteroauth
PHPライブラリの依存関係を管理するComposerをMacで利用する方法については、以下のリンク先を参考にしてみてください。
また、Composerを利用しないインストール方法については、文末の参考サイトを確認してみてください。
検索結果の投稿IDを配列にするPHPスクリプト
プロジェクトのルートディレクトリにPHPファイルを作成し、以下のソースコードを記述します。コード内のxxxxxxxxの箇所には、確認したTwitter APIの認証情報をそれぞれ指定します。
また、Twitter API v2. を利用する場合には、TwitterOAuthクラスのインスタンスに対してsetApiVersion('2') を呼び出します。
例では、スクリプトを実行すると、指定したアカウントの最新の投稿5件を取得します。そして、取得した投稿情報のオブジェクトの中から、投稿本文を配列に格納します。
// TwitterOAuthを利用するためComposerのautoload.phpを読み込み
require __DIR__ . '/vendor/autoload.php';
// TwitterOAuthクラスをインポート
use Abraham\TwitterOAuth\TwitterOAuth;
// Twitter APIを利用するための認証情報。xxxxxxxxの箇所にそれぞれの情報をセット
const TW_CK = 'xxxxxxxx'; // Consumer Keyをセット
const TW_CS = 'xxxxxxxx'; // Consumer Secretをセット
const TW_AT = 'xxxxxxxx'; // Access Tokenをセット
const TW_ATS = 'xxxxxxxx'; // Access Token Secretをセット
// TwitterOAuthクラスのインスタンスを作成
$connect = new TwitterOAuth( TW_CK, TW_CS, TW_AT, TW_ATS );
// Twitter API v2. を利用する場合
// $connect->setApiVersion('2');
$statuses = $connect->get(
'statuses/user_timeline',
// 取得する投稿の条件を配列で指定
array(
// ユーザー名(@は不要)
'screen_name' => 'XXXXXXXX',
// 投稿件数
'count' => '5',
// リプライを除外するかを、true(除外する)、false(除外しない)で指定
'exclude_replies' => 'true',
// リ投稿を含めるかを、true(含める)、false(含めない)で指定
'include_rts' => 'false'
)
);
// 投稿本文を格納する変数
$text_list = [];
// 取得した投稿情報のオブジェクトから、投稿本文を取得し配列$id_listに格納
foreach( $statuses as $tweet ){
$text = $tweet->text;
array_push( $text_list, $text );
}
コマンドラインから作成したファイルを実行するには、ファイルのあるディレクトリに移動して、次のコマンドを実行します。
php ファイル名
TwitterOAuthの利用方法について
TwitterOAuthの利用方法の詳細は、以下のリンク先を参考にしてみてください。
また、例で利用した以外のリクエストパラメータ・レスポンスデータなどは、文末の参考サイトを確認にしてみてください。