1

Twitter api php スクリプトを使用して、最後の 100 人のフォロワーを正常に吐き出しました。

$flwrs_url = "http://api.twitter.com/1/statuses/followers/exampleuser.json";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $flwrs_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$curlout = curl_exec($ch);
curl_close($ch);
$response = json_decode($curlout, true);

foreach($response as $friends){
    $id = $friends['id'];   
$screen_name = $friends['screen_name'];
....

(自分のアカウントの代わりに exampleuser を使用しました) これを拡張して、より多くの、またはすべてのフォロワーを含めるにはどうすればよいですか?

ありがとうございました

4

2 に答える 2

0

フロリアンさん、回答ありがとうございます。ところでつまずいて、私が探していたことを行う正しい方法を見つけたと思います。私が間違っている場合は修正してください。

を使用した後:

 $code=$tmhOAuth->request('GET', $tmhOAuth->url('1/followers/ids'),
            array('screen_name' => $user, 'cursor' => $cursor));

5000 人のフォロワー (ユーザー ID) をすべて取得する手法。次のコードを使用して、一度に 100 個のバッチ (ユーザーの詳細) を取得します。

$status_url = "http://api.twitter.com/1/users/lookup.json?user_id=";
$lastNum=$last; // $lastNum=100;
$i=$first;     // $i=0;
while($i<$lastNum){
    if ($i==($lastNum-1)){
        $status_url = $status_url . "$followers[$i]";
    }else{  
        $status_url = $status_url . "$followers[$i],";
    }

    $i++;
}

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $status_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$curlout = curl_exec($ch);
curl_close($ch);
$response = json_decode($curlout, true);

$i = 0;
foreach($response as $friends){
    $id = $friends['id'];
    $screen_name = $friends['screen_name'];
    $name = $friends['name'];
    $thumb = $friends['profile_image_url'];
    $url = $friends['screen_name'];
    $location = $friends['location'];
    $description = $friends['description'];
    echo "$i) $id $screen_name $name $location $description<br />";
    $i++;
}

これらの「100 個のバッチ」のそれぞれの間に「スリープ」を入れる必要があることはわかっていますが、どの程度使用すればよいかよくわかりません。

于 2012-09-08T14:02:36.537 に答える
0

リクエストのTwitter API ドキュメントによると、GET followers/ids最大 5000 人のフォロワーが返されるはずです。

ただし、すべてのフォロワーが API によって返されるわけではない場合next_cursor、次のフォロワーのバッチを取得するために使用できる要素が応答に含まれている必要があります。next_cursorasの値をリクエストに追加するだけですcursor(API ドキュメントも参照してください)。

最近廃止されたバージョン 1 の Twitter API を使用していることに注意してください。つまり、おそらく来年初めには機能しなくなるでしょう。できるだけ早くバージョン 1.1にアップグレードする必要があります。新しいガイドラインが導入されました。その 1 つは、すべてのリクエストを oAuth で認証する必要があるというものです。

于 2012-09-07T11:34:28.200 に答える