如何使用 Laravel 从 Twitter API 获取所有可用的用户搜索记录


how to get all available user search records from twitter API using laravel

我正在研究twitter API (https://api.twitter.com/1.1/users/search.json)。当我使用 GET 请求请求用户记录时,我只在 json 前 20 条记录中获得了第一页记录,但我想要我输入的任何特定名称的所有记录。如何扩展请求并将其存储在数据库中

public function getTwitter() {
    $settings = array(
        'oauth_access_token'        => "xxxxxxxxxxxxxx",
        'oauth_access_token_secret' => "xxxxxxxxxxxxxxxx",
        'consumer_key'              => "xxxxxxxxxxxxxxxxxxxxx",
        'consumer_secret'           => "xxxxxxxxxxxxxxxxxxxxxxx",
    );

    $url           = 'https://api.twitter.com/1.1/users/search.json';
    $getfield      = '?q=name to search';
    $requestMethod = 'GET';
    $twitter = new TwitterAPIExchange($settings);
    $users   = $twitter->setGetfield($getfield)
        ->buildOauth($url, $requestMethod)
        ->performRequest();
    $users = json_decode($users, true);
    // var_dump($users);die();
    for ($i = 0; $i <= 19; $i++) {
        $twitter           = new twitter_user();
        $twitter->user_id  = $users[$i]['id'];
        $twitter->name     = $users[$i]['name'];
        $twitter->sname    = $users[$i]['screen_name'];
        $twitter->location = $users[$i]['location'];
        $twitter->save();
    }
    echo "Data saved";
}

使用它进行循环直到 19 岁,因为它给了我 20 条记录,我想动态访问所有可用记录。

 public function full_Record($page){  
    $settings = array(
        'oauth_access_token' => "xxxxxxxxxxxxxxxxxxxxxxx",
        'oauth_access_token_secret' => "xxxxxxxxxxxxxxxxxxxx",
        'consumer_key' => "xxxxxxxxxxxxxxxxxxxxxxxxxxx",
        'consumer_secret' => "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
        );   
    $url = 'https://api.twitter.com/1.1/users/search.json';
    $getfield = '?q=john&page='. $page;
    $requestMethod = 'GET';
    $twitter = new TwitterAPIExchange($settings);
    $users =  $twitter->setGetfield($getfield)
            ->buildOauth($url, $requestMethod)
            ->performRequest();
    $users = json_decode($users,true);
    if(empty($users)){

        echo "Data saved less data available";
    }
    else{
            for($i=0;$i<=19;$i++){
                $twitter=new twitter_user();
                $twitter->user_id=$users[$i]['id'];
                $twitter->name=$users[$i]['name'];
                $twitter->sname=$users[$i]['screen_name'];
                $twitter->location=$users[$i]['location'];
                $twitter->save();
            }
                $page++;
                $this->full_Record($page);                  
            else{
                echo "Data Saved ok";
            }
    }

本准则按要求工作