Twitter bootstrap twitterapi:Url搜索用户名

Twitter bootstrap twitterapi:Url搜索用户名,twitter-bootstrap,twitter,twitter-oauth,Twitter Bootstrap,Twitter,Twitter Oauth,我有一个网站列表,我想看看他们是否有twitter帐户。我很好奇API中是否有用户名的url搜索,或者类似的东西。我一直在阅读和环顾四周;然而,我还是做不到。当我可以运行一个函数来为我做这些工作时,我不愿意手动完成这项工作。非常感谢您对本主题的反馈 你好 正如上面评论中所解释的,twitter API的第1版已被弃用,不久将被完全删除。这意味着简单的请求一旦被删除,将不再有效,这很快就会实现 基本上,从那时起,为了从twitter获取任何类型的数据,您需要使用其版本1.1api发出经过身份验证的

我有一个网站列表,我想看看他们是否有twitter帐户。我很好奇API中是否有用户名的url搜索,或者类似的东西。我一直在阅读和环顾四周;然而,我还是做不到。当我可以运行一个函数来为我做这些工作时,我不愿意手动完成这项工作。非常感谢您对本主题的反馈


你好

正如上面评论中所解释的,twitter API的第1版已被弃用,不久将被完全删除。这意味着简单的请求一旦被删除,将不再有效,这很快就会实现

基本上,从那时起,为了从twitter获取任何类型的数据,您需要使用其版本1.1api发出经过身份验证的请求

这为需要它们的人解释了使用PHP调用他们的1.1版api所需的确切步骤

这是你想做的,在你彻底阅读了上面的文章之后

  • 在twitter开发站点上设置应用程序。这很简单,你和twitter之间都有一组键(总共有四个键,我的帖子解释了这一点)
  • 包括PHP脚本,所有内容都在我的帖子和github上
  • 从那时起,您只需向PHP传递一个变量username,并使用该变量使用v1.1API检查它们是否存在
  • 我假设你懂一点PHP。这就是如何使用检查用户名是否存在的方法

    用于获取用户的时间线。文档说明您可以使用屏幕名称参数。您还知道它需要一个获取请求


    有了上述信息和我的类,您可以非常轻松地为用户执行请求

    require_once "TwitterAPIExchange.php";
    
    // As my post explains, these are the keys you get from the twitter dev site
    $settings = array(
        'oauth_access_token' => "YOUR_OAUTH_ACCESS_TOKEN",
        'oauth_access_token_secret' => "YOUR_OAUTH_ACCESS_TOKEN_SECRET",
        'consumer_key' => "YOUR_CONSUMER_KEY",
        'consumer_secret' => "YOUR_CONSUMER_SECRET"
    );
    
    // This is the username you want to check. You can get it however you want. Just place it into this $username variable.
    $username = 'USERNAMEHERE';
    
    $url = 'https://api.twitter.com/1.1/statuses/user_timeline.json';
    $requestMethod = 'GET';
    $getfield = '?screen_name='.$username;
    
    $twitter = new TwitterAPIExchange($settings);
    $result = $twitter->setGetfield($getfield)
                      ->buildOauth($url, $requestMethod)
                      ->performRequest();
    
    好的,结果现在存储在
    $result
    变量中。你可以在这里做你想做的事。您希望检查用户是否存在,因此
    var\u dump()
    将检查结果,并查看如何确定用户是否存在。显然,它不会包含实际用户,它可能包含
    false
    null

    由于我不知道我的头顶,让我们假设
    $result->user
    等于
    false
    。您只需执行以下操作:

    if (!$result->user)
    {
        echo "The user doesn't exist!";
    }
    else
    {
        echo "The user exists!";
    }
    
    。。。或者,简写风格(我喜欢在我的帖子中添加这样的小东西)

    使用以下方法进行一些研究:


    正如上面评论中所解释的,twitter API的第1版已被弃用,不久将被完全删除。这意味着简单的请求一旦被删除,将不再有效,这很快就会实现

    基本上,从那时起,为了从twitter获取任何类型的数据,您需要使用其版本1.1api发出经过身份验证的请求

    这为需要它们的人解释了使用PHP调用他们的1.1版api所需的确切步骤

    这是你想做的,在你彻底阅读了上面的文章之后

  • 在twitter开发站点上设置应用程序。这很简单,你和twitter之间都有一组键(总共有四个键,我的帖子解释了这一点)
  • 包括PHP脚本,所有内容都在我的帖子和github上
  • 从那时起,您只需向PHP传递一个变量username,并使用该变量使用v1.1API检查它们是否存在
  • 我假设你懂一点PHP。这就是如何使用检查用户名是否存在的方法

    用于获取用户的时间线。文档说明您可以使用屏幕名称参数。您还知道它需要一个获取请求


    有了上述信息和我的类,您可以非常轻松地为用户执行请求

    require_once "TwitterAPIExchange.php";
    
    // As my post explains, these are the keys you get from the twitter dev site
    $settings = array(
        'oauth_access_token' => "YOUR_OAUTH_ACCESS_TOKEN",
        'oauth_access_token_secret' => "YOUR_OAUTH_ACCESS_TOKEN_SECRET",
        'consumer_key' => "YOUR_CONSUMER_KEY",
        'consumer_secret' => "YOUR_CONSUMER_SECRET"
    );
    
    // This is the username you want to check. You can get it however you want. Just place it into this $username variable.
    $username = 'USERNAMEHERE';
    
    $url = 'https://api.twitter.com/1.1/statuses/user_timeline.json';
    $requestMethod = 'GET';
    $getfield = '?screen_name='.$username;
    
    $twitter = new TwitterAPIExchange($settings);
    $result = $twitter->setGetfield($getfield)
                      ->buildOauth($url, $requestMethod)
                      ->performRequest();
    
    好的,结果现在存储在
    $result
    变量中。你可以在这里做你想做的事。您希望检查用户是否存在,因此
    var\u dump()
    将检查结果,并查看如何确定用户是否存在。显然,它不会包含实际用户,它可能包含
    false
    null

    由于我不知道我的头顶,让我们假设
    $result->user
    等于
    false
    。您只需执行以下操作:

    if (!$result->user)
    {
        echo "The user doesn't exist!";
    }
    else
    {
        echo "The user exists!";
    }
    
    。。。或者,简写风格(我喜欢在我的帖子中添加这样的小东西)

    使用以下方法进行一些研究:


    下面是我的代码,它根据上面详述的非常有用的PHP类检查用户是否存在

    首先,使用json_decode将
    $result
    转换为PHP数组。确保将第二个参数设置为
    true
    ,这样就不会在结果数组中获取对象:

    $result = json_decode($result, true);
    
    现在,您必须检查
    screen\u name
    array键是否存在,但是array\u键\u exists不会递归地查看多维数组。因此,您需要找到一个新函数:

    下面是最后一段代码,它使所有的工作。注意我在
    $result
    数组中指向的位置。我基本上看的是发布第一条推文的用户的屏幕名称,因为Twitter API返回用户的时间线,以$username指定

    $result = json_decode($result, true);
    
    if ( array_key_exists_r('screen_name', $result ) ) {
        if ( $result[0]['user']['screen_name'] == $username ) {
            // The username exists
        }
    } else {
        // The username doesn't exist
    }
    

    我不确定是否有更好的方法来检查用户名是否存在。也许只需使用check来检查错误代码?

    以下是我的代码,它基于上面详述的非常有用的PHP类来检查用户是否存在

    首先,使用json_decode将
    $result
    转换为PHP数组。确保将第二个参数设置为
    true
    ,这样就不会在结果数组中获取对象:

    $result = json_decode($result, true);
    
    现在您必须检查
    screen\u name
    array key是否存在,但是array\u key\u exists不会递归地查看mu