我已成功检索到用户时间线,以便在我的网站上显示
$tweets = simplexml_load_file("http://twitter.com/statuses/user_timeline/" . $userID . ".rss");
已经有一段时间了。但是,由于最近有越来越多的页面浏览量,我现在发现由于速率限制我遇到了可怕的HTTP 400
错误。
我一直试图通过litte /没有运气来了解Twitter流媒体API(我没有使用OAuth / JSON的经验,因此它对我来说完全陌生)。
我查看了TwitStream的代码,该代码使用AJAX / JQuery提供对Search API的访问。不幸的是,我发布的内容不足以提供一致的搜索结果,所以这不是一个选项。
我没有发现Twitter上的文档非常有用(我确定如果JSON等对你来说不是很新)我还没有找到任何使用Streaming的简单端到端示例用于从PHP网页获取用户(即我)的最后x
个帖子的API。有很多使用命令行实用程序(例如curl
)打开流的示例,但在某些Web服务器上可能无法实现(我可能没有命令行访问权限)。
如果有人能为我提供简单的PHP / AJAX / JQuery代码,而不是Ruby / Python网页从用户时间线获取最后10条推文,我将非常感激。我不关心它是否会暂时进行民意调查,只需在页面加载上轻松获取推文就会很棒!
因此,为了澄清,我是在一个简单的例子(例如,不打扰CSS /使JSON响应人类可读等)类似于TwitStream但是用于获取用户时间线并在网页上显示它们。
答案 0 :(得分:0)
`<?php
$username = "TwitterUsername"; // Your twitter username.
$limit = "5"; // Number of tweets to pull in.
/* These prefixes and suffixes will display before and after the entire block of tweets. */
$prefix = ""; // Prefix - some text you want displayed before all your tweets.
$suffix = ""; // Suffix - some text you want displayed after all your tweets.
$tweetprefix = ""; // Tweet Prefix - some text you want displayed before each tweet.
$tweetsuffix = "<br>"; // Tweet Suffix - some text you want displayed after each tweet.
$feed = "http://search.twitter.com/search.atom?q=from:" . $username . "&rpp=" . $limit;
function parse_feed($feed, $prefix, $tweetprefix, $tweetsuffix, $suffix) {
$feed = str_replace("<", "<", $feed);
$feed = str_replace(">", ">", $feed);
$clean = explode("<content type=\"html\">", $feed);
$amount = count($clean) - 1;
echo $prefix;
for ($i = 1; $i <= $amount; $i++) {
$cleaner = explode("</content>", $clean[$i]);
echo $tweetprefix;
echo $cleaner[0];
echo $tweetsuffix;
}
echo $suffix;
}
$twitterFeed = file_get_contents($feed);
parse_feed($twitterFeed, $prefix, $tweetprefix, $tweetsuffix, $suffix);
?>`
我在http://www.instantshift.com/2009/05/25/10-twitter-hacks-for-your-wordpress-blog/
找到了这个答案 1 :(得分:0)
尝试使用此课程 https://github.com/KartikTalwar/Twitter-Class
附带优秀的简单示例,只需几行代码即可显示大量细节
答案 2 :(得分:0)
在不执行以下两项操作之一的情况下从服务器中提取推文时,无法绕过速率限制:
1)按时间间隔下拉推文并将其缓存在您的网站上
2)让用户验证自己并使用他们的令牌来提取推文
当然,有一种很多更简单的方法可以做到这一点。在页面本身的javascript中请求时间线。这些时间线请求将计入用户查看页面而不是服务器的IP。
以下是一个包含一些javascript示例的网站:http://www.mivamerchant.com/blog/how-to-make-custom-twitter-feed-for-your-website