Twitter APIでツール作り:とりあえず完成
キーワードを’登山’に設定してTwitterを検索して表示するツールを作ってみました。粗いけど、こんなもんだという感じです。
重要な情報ならDBに蓄積して。。。ってなりますが、これはそのまま表示して終わりです。
require __DIR__ . '/vendor/autoload.php';
use mpyw\Cowitter\Client;
$ck = '';
$cs = '';
$at = '';
$ats = '';
$client = new Client([$ck, $cs, $at, $ats]);
// Search tweets
$key_word = '登山';
try {
// Send a POST request to Twittern
$tweets_params = ['q' => $key_word . ' exclude:retweets' , 'count' => '100' ];
$tweets = $client->get('search/tweets', $tweets_params );
echo 'Keyword = ' . $key_word . '<br>' . '<hr>';
$cnt = 0;
foreach ($tweets->statuses as $value) {
$cnt = $cnt + 1;
$text = htmlspecialchars($value->text, ENT_QUOTES, 'UTF-8', false);
disp_tweet($value, $text, $cnt);
}
} catch (\RuntimeException $e) {
// Jump here if an errors has occurred
echo "Error: {$e->getMessage()}\n";
}
function disp_tweet($value, $text, $cnt){
$screen_name = $value->user->screen_name;
$updated = date('Y/m/d H:i', strtotime($value->created_at));
$tweet_id = $value->id_str;
$url = 'https://twitter.com/' . $screen_name . '/status/' . $tweet_id;
echo '<div class="tweetbox">' . PHP_EOL;
echo '<div class="counter">No.' . $cnt . ' ' . $tweet_id . '</div>' . PHP_EOL;
echo '<div class="meta"><a target="_blank" href="' . $url . '">' . $updated . '</a>' . '<br>@' . $screen_name .'</div>' . PHP_EOL;
echo '<div class="tweet">' . $text . '</div>' . PHP_EOL;
echo '</div><hr>' . PHP_EOL;
}