【twitteroauth】TwitterAPIで検索して特定のつぶやきをしたユーザーを取得する方法【PHP】

公開日: : 最終更新日:2014/08/14 PHP, Twitter

スポンサーリンク

twitteroauthを利用してワード検索して特定のつぶやきをしたユーザーを取得する方法です。twitteroauthはGitHubで公開されているので持ってない方はそちらからダウンロードしてください。

以下ソースコード

<?php
//twitteroauth.phpを読み込み
require_once dirname(__FILE__) .'/twitteroauth.php';
//検索ワード配列
$keyword_list = array("ポケモン","パズドラ");
//最大検索数
$countmax = 10;
//twitterAppsで取得
$consumerKey = '*****';
$consumerSecret = '*****';
$accessToken = '*****';
$accessTokenSecret = '*****';
$to = new TwitterOAuth(
	$consumerKey,
	$consumerSecret,
	$accessToken,
	$accessTokenSecret
);
//Twitterで検索するワード
//複数の場合はORかANDを使う
//「ポケモン OR パズドラ」のような形になればいい
$key = "";
$size = count($keyword_list);
for($i=0;$i<$size;$i++){
	$keyword = $keyword_list[$i];
	$key .= $keyword;
	if($i<$size-1){
		$key .= " AND ";
	}
}
//オプション設定
//countmaxは最大検索数
$options = array('q'=>$key,'count'=>$countmax,'lang'=>'ja');
//検索
$json = $to->OAuthRequest(
	'https://api.twitter.com/1.1/search/tweets.json',
	'GET',
	$options
);
$jset = json_decode($json, true);
//tweetidを取得
foreach ($jset['statuses'] as $result) {
	//ローマ字の名前
	$screen_name = $result['user']['screen_name'];
	//ユーザーID(数字)
	$id = $result['user']['id'];
	//ユーザー名
	$name = $result['user']['name'];
	//ユーザーアイコン画像URL
	$link = $result['user']['profile_image_url'];
	//該当ツイート
	$content = $result['text'];
	//更新日
	$updated = $result['created_at'];
	$time = date("Y-m-d H:i:s",strtotime($updated));
	//不明なものはprint_rで見ればいい
	//print_r($result);
	echo "<img src='".$link."''>"." | ".$screen_name." | ".$id." | ".$name." | ".$content." | ".
		$time."<br>";
}
?>

取得される$idが9桁(?)の数字のユーザーIDで特定のユーザーをフォローするときなどで使用できます。$screen_nameはローマ字のユーザー名となっています。

今回は「ポケモン」、「パズドラ」をキーワードにして10件まで検索を行いました。取得例はこんな感じになります。

Twitter検索

といってもモザイクになってて分かりずらいと思いますが、あしからず。。

スポンサーリンク
Amazon
  • このエントリーをはてなブックマークに追加

関連記事

【PHP】WebAPIのJSONファイルを読み込む

WebAPIでJSONファイルを使う機会があったので使い方をメモ。最近ではWebAPIはSNSやブロ

記事を読む

【TwitterOauth】特定のつぶやきを取得してリツイート数順やランダム順にする【PHP】

TwitterOauthを利用して特定のワードをつぶやいたデータを取得してそれをリツイート順なりに並

記事を読む

【MySQL・PHP】WHERE句とORDER BY句を使った#1064エラーについて

MySQLで次のようなクエリを出すとエラーとなって帰ってきました。 SELECT * from

記事を読む

【PostgreSQL】psql version 8.4, server version 9.5

PostgreSQLを使おうとしたところ下記のような警告が出てきました。 -bash-4.1$

記事を読む

【PHP】file_get_contentsでリンク元などのヘッダ情報を変更する

file_get_contentsで他サイトの情報を読み取る際などでリンク元を明記したい場合は以下の

記事を読む

【PHP】headerでContent-Typeを指定したのに効かない場合の対処法

PHPでサイトマップを作ろうと思い、XML形式のファイルを出力しようとしてheaderを指定したのに

記事を読む

Twitterのフォロワーが有効かどうか評価するツール

ツイッターの自分のフォロワーがスパムや活動休止中か判定することのできるツールに『Status Peo

記事を読む

【PHP】クラスの配列をソートする

クラスのメンバに応じて配列をusortでソートします。クラス内の関数でソートする場合は下のようにする

記事を読む

ニコニコ動画のURLリンクから外部プレイヤーのスクリプトに正規表現で置換する

ニコニコ動画の動画のアドレスを抽出して外部プレイヤー貼りつけソースのスクリプトに変換するソースです。

記事を読む

【PHP】特定のURLからそのAtomやRSSのフィードを抽出する方法

特定のURLからRSSやATOMのフィードを抽出する方法をメモ。 流れとしては指定のWebページH

記事を読む

UWSCを使ったソフト自動立ち上げ【SoftEther VPN Server】

やりたいこと 最近SoftEtherという筑波大学発のベンチャー企業

【PHP】headerでContent-Typeを指定したのに効かない場合の対処法

PHPでサイトマップを作ろうと思い、XML形式のファイルを出力しようと

スマホ向け幅固定サイトの回転時の幅対応方法

幅固定サイトでのスマホ回転時Webサイトの横幅を合わせる方法のメモ。

【PHP】特定のURLからそのAtomやRSSのフィードを抽出する方法

特定のURLからRSSやATOMのフィードを抽出する方法をメモ。 流

フィード抽出ツール(RSS1.0、RSS2.0、atom)

任意URL サイト名 サイトURL RSS1.0

格安プラン限定レンタルサーバー機能比較表(2016年)

はじめに  最近新しい共用サーバーをレンタルしようと思い調査およびそ

kindle unlimitedが便利だったのでお勧めの使い方など感想メモ

 kindle unlimitedというサービスが8/3からAmazo

→もっと見る

  • Author : ががんぼ
    プログラミングやWeb関係で気付いたことについてメモしていく予定。だいたいが備忘録ですが、自分でサンプルを作って動かしてみたりしています。
PAGE TOP ↑