2015-11-01 70 views
3

的Twitter官方的方式有私人端点像这样的:获取鸣叫的编号为URL

http://urls.api.twitter.com/1/urls/count.json

分享Tweet计数可以从这里获取,但不建议由Twitter。此外,他们一直说他们会在不久的将来关闭这些端点。

网站流API现在处于内部测试版,它们不接受应用程序。

https://dev.twitter.com/streaming/sitestreams

使叶片是只有一个选项,REST API,但我没有看到任何端点有可能返回的tweets数量为某个网址。

获取这些数据的最佳方式是什么?有没有一个“官方”端点?

或者唯一的方法是使用公共流API或REST API搜索端点和筛选结果?

+0

正如您已经确定的 - 一旦Twitter关闭了私有端点,就没有办法做到这一点。 –

回答

2

私人终端将在11月20日前关闭,没有任何东西可以替代它。 This blog post from Twitter解释了背景:显然这是为了转移到代号为Manhattan的新型“实时多租户分布式数据库”系统。

REST API将被限制用于此目的。您必须先搜索您的网址,收集每页结果并自行添加推文总数。例如,此请求

https://api.twitter.com/1.1/search/tweets.json?q=metro.co.uk&count=100 

将获得与http://metro.co.uk关联的推文。 (如果您只是将其粘贴到浏览器中,则不起作用 - 您必须首先进行身份验证,您可以在Twitter API console tool上尝试此操作。)但Search API每个结果页返回最多100条推文,并且仅返回tweets从最近7天开始。

看来唯一的解决方案(解释为here)是一个使用Twitter Streaming API的精巧解决方案。基本上你必须创建自己的应用来计算相关的推文。它将打开与stream.twitter.com的连接,将您的URL作为track参数传递。每次有人发送推文时,Twitter都会返回一条推文,而你的应用必须对它们进行计数。在该职位给出的例子是:

curl -u user:password "https://stream.twitter.com/1/statuses/filter.json" -d "track=https%3A%2F%2Fdev.twitter.com%2Fdiscussions%2F5653" 

我不知道你将如何应对这种情况下短网址。

此更改意味着像SharedCount这样报告Twitter份额计数的第三方服务不得不停止提供该数据。抱歉给你坏消息 - 我真的很失望这种情况我自己。看起来很疯狂,我们不能只是得到一个给定URL的推文。

你可以在this thread找到更多关于此的信息。