dポイントプレゼントキャンペーン実施中!

Twitterのツイート内容取得方法について、質問させてください。

現在、Twitter APIを使用して、PHPにてプログラムを組んでいます。
Twitterのツイート内容を、URLから取得させたいと思っているのですが、
Twitter APIでそういったことをするのは可能でしょうか?

「Twitter API ツイート内容を取得 URL」というキーワードで検索してみましたが、
今のところ取得方法が見つかっていません。

どうすればURLからツイート内容が取得できるのか、
そもそもそんなことは出来ないのか、ご存知の方がいらっしゃいましたら
教えていただければと思います。

A 回答 (6件)

他社の回答を批判するのは筋ではないですが、ちょっとこれは酷過ぎませんかね…(汗)Picosoftさんの回答の方法はAPI1.0までは有効でしたが、残念ながらAPI1.1ではすべてのエンドポイントにOAuth認証が必要となってしまったので、そのままではエラーしか返されません。

結局のところライブラリに頼るのが一番楽です。どのライブラリを使うかはその人の趣向によって変わってきますが、ここでは私が自作したライブラリを使用します。1ファイル単体設置するだけで使えるようになるのでお手軽です。

まずは下記URLにてコンシューマーキー・コンシューマーシークレットを取得し、自分用のアクセストークン・アクセストークンシークレットを確認してください。

Twitter Developers
https://dev.twitter.com/

次に以下からUltimateOAuth.phpをダウンロードしてください。細かい使い方はREAEMEに書いてあるので必要であればお読みください。

UltimateOAuth
https://github.com/Certainist/UltimateOAuth

同じディレクトリに下記ファイルを設置して実行します。

<?php
require_once 'UltimateOAuth.php';
$ck = 'コンシューマーキー';
$cs = 'コンシューマーシークレット';
$at = 'アクセストークン';
$as = 'アクセストークンシークレット';
$id = 'URL末尾のステータスID';
$uo = new UltimateOAuth($ck, $cs, $at, $as);
$status = $uo->get('statuses/show', array('id' => $id));
if (isset($status->errors)) { die($status->errors[0]->message); }
echo $status->text;

なお、取得できるツイートのテキストに関して…「<」と「>」は「&lt;」「&gt;」にエスケープされていますが、「&」だけはそのままであるというゴミ仕様なので、ここをHTMLの仕様に厳格に従うようにしたいならば

echo preg_replace('/&(?!lt;)(?!gt;)/', '&amp;', $status->text);

とする必要があります。
    • good
    • 1
この回答へのお礼

まさに私が求めていた回答でした!
ありがとうございました。
ライブラリも使用させていただきました、ありがとうございます。

お礼日時:2014/01/08 02:52

ここで言う「URL」とは、


 https://twitter.com/oshiete_goo/statuses/4199521 …
みたいなURL(パーマリンク)のことでしょうか?

実際に試したわけではないので間違っているかもしれませんが、
 GET statuses/show/:id (idにはURLの末尾にある数字を使用)
 例:https://api.twitter.com/1.1/statuses/show.json?i …
で取得できそうな気がします。

参考URL:https://dev.twitter.com/docs/api/1.1/get/statuse …
    • good
    • 0

無理です。


諦めて下さい。
    • good
    • 0

対象アカウントがフォロワーでないと無理です



諦めて下さい。
    • good
    • 0

出来ませんよ


諦めてください
    • good
    • 0

多分あなたが見たいアカウントがフォロワーでなければ見れないようにしてますので無理ですね

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!