Twitterから投稿をインポートする

サイトを開発するとき、最後の数件の投稿(ツイート)をTwitterから取得する必要がある場合があります。 これは、一般ユーザーの個人用テープまたは公式の会社テープのいずれかです。



この問題を解決するには、少なくとも2つの方法があります。



方法1:



UPD:このメソッドは機能しなくなりました

最初の方法は、フィードからツイートを含むRSSファイルを取得することです。



この方法でのみ発生する可能性のある最初の問題は、ログインだけでなくuser_idでのみ作業が可能であることです。



ログイン情報は、XMLを介して簡単に取得できます。



$username = 'newpdv'; $user_info = simplexml_load_file('http://twitter.com/users/show.xml?screen_name='.$username); $user_id = $user_info[0]->id;
      
      





結果のXMLファイルには、ユーザーに関するすべての情報が格納されます。



user_idを知っていると、フィードから簡単に投稿を取得できます



 $timeline = simplexml_load_file('http://twitter.com/statuses/user_timeline/'.$user_id.'.rss');
      
      





最後の投稿を表示します。



 $count = 3; for($i=0; $i<$count; $i++){ echo '<b>'.date('dmY G:i',strtotime($timeline->channel->item[$i]->pubDate)).'</b></br>'; echo $timeline->channel->item[$i]->title.'</br>'; echo '<a href="'.$timeline->channel->item[$i]->link.'">Twitter</a></br></br>'; }
      
      







方法2:



2番目の方法は、Twitter APIを使用することです。 この方法はより複雑で登録が必要ですが、APIを使用するとさらに多くの機能が提供されます。



最初に行う必要があるのは、dev.twitter.com / apps / newでTwittetアプリを登録することです

アプリケーションの名前、説明、使用するサイト、タイプ(この場合はブラウザー)、アクセスモード(この場合は読み取り専用で十分です)、および必要に応じてアイコンを入力する必要があります。



登録後、キーConsumer ConsumerキーとConsumer secretが提供されます。



作業を容易にするために、Twitterが提供する既製のライブラリの1つ、Abraham Williamsが作成したTwitterOAuthを使用します。

その他のライブラリ、 他のプログラミング言語については、 dev.twitter.com / pages / librariesで見つけることができます。



config.phpファイルで TwitterOAuthライブラリをダウンロードした後、登録後にアプリケーションCONSUMER_KEY、CONSUMER_SECRET、およびOAUTH_CALLBACKを受け取ったこと示します



ライブラリを初めて起動する場合、Twitterサインインをクリックし、Twitterページでアプリケーションがあなたのページにアクセスできるかどうかの質問に答えて、Twitterへのアクセスを許可する必要があります-Allow。



ここで、タスクのindex.phpをわずかに変更します。



 [...] $content = $connection->get('account/verify_credentials'); $count = 3; $timeline = $connection->get('statuses/user_timeline', array('count' => $count, 'include_rts' => 1)); foreach ($timeline as $twitt) { echo '<b>'.date('dmY G:i',strtotime($twitt->created_at)).'</b></br>'; echo $twitt->text.'</br>'; }
      
      





そして、必要なものを手に入れます。



さらに



dharryaが指摘したように、純粋な形式でメソッドを使用することは非合理的かもしれません。 ツイートのキャッシュは、データベースであろうとファイルシステムであろうと、可能な限り使用する必要があります。



おわりに



Habrに関する最初の記事では、テープからツイートを取得する2つの方法が検討されました。

実行時では、両方のオプションはほぼ同じです(スクリーンショットで確認できます)。

あなたを選んでください。 最新のツイートのリストを取得するだけであれば、最初の方法ははるかに短く、開発者とユーザーの両方で特別なアクションを必要としません。 要件が制限されていない場合、APIの巨大な機能が必要なものです。



All Articles