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の巨大な機能が必要なものです。

Source: https://habr.com/ru/post/J123844/


All Articles