Twitter API を使って、特定の(指定した)アカウントのツイートを取得する方法です。
作ってみたのが以下のサイトです。
https://www.bass-world.net/itawotweet/
https://developer.twitter.com/en.html からAPI キーを取得する
https://developer.twitter.com/en.html からアクセスして、
- consumer_key
- consumer_secret
- access_token
- access_token_secret
を取得します。どんなアプリを作るのか、英作文しないといけないけどがんばって!
TwistOAuth の取得
https://github.com/mpyw/TwistOAuth から TwistOAuth を入手します。
TwistOAuth.phar を今から作るプログラムと同階層においてください。
プログラムの作成
<?php
require_once 'TwistOAuth.phar';
$consumer_key = '{your-consumer-key}';
$consumer_secret = '{your-consumer-secret}>';
$access_token = '{your-access-token}';
$access_token_secret = '{your-access-token-secret}';
$connection = new TwistOAuth($consumer_key, $consumer_secret, $access_token, $access_token_secret);
$count = 3;
$max_length = 25;
function get_tweet($screen_name){
global $connection, $count, $max_length;
$ret = "";
// connect
$user = $connection->get('statuses/user_timeline',
array('screen_name' => $screen_name, 'count' => $count, 'exclude_replies' => 'false', 'include_rts' => 'false',));
// get user names.
$names = "<h4>" . htmlspecialchars($user[0]->user->name, ENT_QUOTES, 'UTF-8', false)
. " @" . htmlspecialchars($user[0]->user->screen_name, ENT_QUOTES, 'UTF-8', false)
. "</h4>\n";
$ret .= $names;
$ret .= '<ul class = "tweet">';
// get tweets.
foreach ($user as $value){
$screen_name = htmlspecialchars($value->user->screen_name, ENT_QUOTES, 'UTF-8', false);
$post_date = htmlspecialchars($value->created_at, ENT_QUOTES, 'UTF-8', false);
$text = htmlspecialchars(mb_substr($value->text, 0, $max_length, 'UTF-8'), ENT_QUOTES, 'UTF-8', false);
$link = '<a href = "https://twitter.com/' . $screen_name . '/status/' . $value->id_str . '">';
$ret .= "<li>" . $post_date . " " . $link . $text . "</a></li>\n";
}
$ret .= "</ul>\n";
return $ret;
}
// retrieve users tweet.
print(get_tweet("kumeuchi"));
print(get_tweet("meets_mandolin"));
みたいな感じで。
PHP プログラムをコマンドラインで動かす
$php aggregate_tweet.php > my_fav_tweets.html
みたいな感じで。
“Twitter API で特定のアカウントのツイートを取得する方法” への1件の返信