所以几天前 Twitter 遗憾地停止支持他们的 1.0 API。现在他们有一个新的 1.1 API,突然他们要求您对所有内容(包括获取最新状态)进行身份验证(创建应用程序、创建密钥、下载 oauth.php、下载 twitteroauth.php 等...)只是……呃!不,谢谢!
我只想有一个小 .php 脚本来获取用户的最新状态。必须有一种简单的方法来实现这一点而无需进行身份验证。
有人有想法吗?
编辑:你好谷歌同事。我自己找到了一个解决方案并将其发布在下面。一定要检查一下。
在这里阅读:
https://dev.twitter.com/blog/changes-coming-to-twitter-api
例如,有许多应用程序以非常高的速率(抓取、机器人等)从 Twitter API 中提取数据,而我们只知道应用程序的 IP 地址。为了防止恶意使用 Twitter API并了解哪些类型的应用程序正在访问该 API,以便对其进行改进以满足开发人员的需求,了解 Twitter API 上的活动以及使用该 API 的应用程序非常重要平台。
在 1.1 版本中,我们将要求对 API 的每个请求都经过身份验证。对于在发出 API 请求时已经使用 OAuth 的开发人员,您的所有身份验证令牌都将从 v1.0 无缝过渡到 v1.1。如果您的应用程序当前使用 Twitter API 而不使用 OAuth,您将需要在 2013 年 3 月之前更新您的应用程序。下面有关于从 v1.0 转换到 v1.1 的时间的更多信息。
他们这样做是为了防止垃圾邮件发送者占用 Twitter 的带宽。对不起,伙计,你也必须遵守。
我使用http://www.twitter-rss.com/做了一个快速而肮脏的修复——我希望这个解决方案在它关闭之前运行一段时间。如果它不再起作用,请务必给我发消息,我会创建自己的 Twitter -> RSS 服务供你们使用。
好的,现在这里是关于如何在不使用他们的 API、创建应用程序或所有其他东西的情况下获取最新 Twitter 状态的代码。
function GetTwitterStatus($username){
$url = "http://www.twitter-rss.com/user_timeline.php?screen_name=".$username;
$xml = simplexml_load_file($url) or die("Could not connect.");
$tweet = (string) $xml->channel->item[0]->title;
$tweet = substr_replace($tweet, "", 0, strlen($username.": "));
return $tweet;
}
echo GetTwitterStatus("Twitter");