对不起,该页面不存在代码34

时间:2017-07-08 02:14:27

标签: php api twitter

    $consumerkey = 'HGJHGJHBJHGUYjhvbjhvGUYG';
    $consumersecret = 'HGFHGFhghgHGFHGhgvchGHGVhgvcHG';
    $accesstoken = 'gvHGHGVHGVhgVHGVhgvhgvhv';
    $accesstokensecret = 'hgHGJHGVHJGVjhgvGVhgvHGVhjgvHGVhgVj';

    $twitter = new TwitterOAuth($consumerkey, $consumersecret, $accesstoken, $accesstokensecret);

    $tweets = $twitter->get('https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=Sunshine&count=10');

print_r($tweets);

给我这个错误:

stdClass Object ( [errors] => Array ( [0] => stdClass Object ( [message] => Sorry, that page does not exist [code] => 34 ) ) ) 

我该如何解决这个问题?因为我向这个脚本抛出的一切都给了我一个错误。

2 个答案:

答案 0 :(得分:1)

您正在使用的库TwitterOAuth不会在其get()方法中使用完整的网址。相反,您需要传递路径以及一系列参数。

根据文档,这个:

$twitter->get('https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=Sunshine&count=10');

应该是:

$twitter->get('statuses/user_timeline', ['screen_name' => 'Sunshine', 'count' => 10]);

文档:https://twitteroauth.com/

答案 1 :(得分:0)

您可能正在尝试访问可能已删除其帐户/推文/评论的用户的信息。于是,这个错误。如果您通过多个用户进行解析,我建议您使用 try 异常块:

try:
    user_tweets = api.user_timeline(user_name, count=10)
except Exception as e:
    print(e, 'User ->', user_name)

验证异常中的用户是否真的删除了他们的帐户/状态的一种快速方法是去 twitter 上检查。例如,如果您想检查 xyz 用户是否删除了他/她的帐户,然后检查给定的 https://twitter.com/xyz 是否存在。