Twitter 検索APIを使って「高速道路渋滞なう」を作ってみる(GET search/tweets)

Twitter_logo_blue

個人的に「電車遅延なう」というサービスを、大変、気に入っています。同じ感じで、「高速道路渋滞なう」というサービスを自分で作ってみたいと思います。

Webサービスの「模写」といったところでしょうか。

目次

お手本は「電車遅延なう」

ここ数日、「電車遅延なう」をじっくりと観察していると、仕様として次の6つが考えられます(見た目の限りでは)。

  • 最新の遅延を自動的に表示する
  • 「検索キーワード」から「特定のキーワード」を結びつける
  • 「特定のキーワード」に関するつぶやきを表示する
  • つぶやきには「ツィートに返信(Reply)」、「リツィート(RT)」、「お気に入りに登録(Fav)」が表示される
  • 検索キーワードから最近の遅延路線を表示させる
  • 検索キーワードから遅延指数を計算する

ユーザーが利用するときは、上から下の順番通りとなると考えます。しかし、機能を積み上げて完成させるためには、「3 → 4 → 1 → 2 → 5 → 6」という流れになると思います。

特定のキーワードを検索してつぶやきを表示する

「高速道路なう」のもっとも基本的な機能である、「特定のキーワード」を検索して、そのつぶやきを表示する機能のコードです。

[php]
<?php

require_once("twitteroauth/twitteroauth.php");

$consumerKey = "○○○○○○○○○○○○○○○○○○○○";
$consumerSecret = "○○○○○○○○○○○○○○○○○○○○";
$accessToken = "○○○○○○○○○○○○○○○○○○○○";
$accessTokenSecret = "○○○○○○○○○○○○○○○○○○○○";

$twObj = new TwitterOAuth($consumerKey,$consumerSecret,$accessToken,$accessTokenSecret);

$keywords = ‘名神高速’;

$param = array(
"q"=>$keywords, // keyword
"lang"=>"ja", // language
"count"=>20, // number of tweets
"result_type"=>"recent" // result type
);

$json = $twObj->OAuthRequest(
"https://api.twitter.com/1.1/search/tweets.json",
"GET",
$param);

$result = json_decode($json, true);

?>
<?php

if($result[‘statuses’]){
foreach($result[‘statuses’] as $tweet){

?>
<ul>
<li><?php echo date(‘Y-m-d H:i:s’, strtotime($tweet[‘created_at’])); ?></li>
<li><?php echo $tweet[‘user’][‘name’]; ?></li>
<li><img src="<?php echo $tweet[‘user’][‘profile_image_url’]; ?>" /></li>
<li><?php echo $tweet[‘text’]; ?></li>
<li><?php echo $tweet[‘id’]; ?></li>
</ul>
<?php } ?>
<?php }else{ ?>
<div class="twi_box">
<p class="twi_tweet">関連したつぶやきがありません。</p>
</div>
<?php } ?>
[/php]

highway_meishin

いろいろとググってみた結果、Twitter Developersのドキュメンテーションと、こちらのサイトがもっとも参考になりました。

この記事を書いている時点で、「ツィートに返信(Reply)」、「リツィート(RT)」、「お気に入りに登録(Fav)」を表示させる方法を考えています。

〔つづきの記事〕

〔参考サイト〕

Twitter_logo_blue

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次