【发布时间】:2021-05-01 23:07:39
【问题描述】:
我知道如何使用 API 获取趋势,但我想要按国家/地区和前 10 名。
我该怎么办?这可能吗?
试过这个,但是不行
http://api.twitter.com/1/trends/current.json?count=50
【问题讨论】:
-
这些方法不再起作用了。 API 1 已过时,您必须进行身份验证才能使用 API 1.1。
标签: twitter
我知道如何使用 API 获取趋势,但我想要按国家/地区和前 10 名。
我该怎么办?这可能吗?
试过这个,但是不行
http://api.twitter.com/1/trends/current.json?count=50
【问题讨论】:
标签: twitter
请注意,Twitter API v1 不再起作用。 Read announcement
所以你应该使用 Twitter API 1.1。
REST方法是这样的:GET trends/place
https://dev.twitter.com/docs/api/1.1/get/trends/place
您应该使用访问令牌进行身份验证才能访问此数据。
【讨论】:
是的,你可以。
首先,找出您想要获取数据的which countries。
打电话
https://dev.twitter.com/docs/api/1/get/trends/available
将为您提供 Twitter 所关注的所有国家/地区的趋势列表。
假设您想要了解英国的趋势。上面告诉我们WOEID是23424975。
要获取英国的top ten trends,请致电
https://api.twitter.com/1/trends/23424975.json
【讨论】:
你需要弄清楚woeids首先在这里使用这个工具http://sigizmund.info/woeidinfo/然后它变得像一个简单的函数一样简单
function get_trends($woeid){
return json_decode(file_get_contents("http://api.twitter.com/1/trends/".$woeid.".json?exclude=hashtags", true), false);
}
给你,我为你写了一个简单的示例脚本。在这里查看Twitter Trends Getter
希望对你有帮助!
【讨论】:
我在这个派对上有点晚了,但你可以使用:
那么,
const Twit = require('twit');
const config = require('./config');
const T = new Twit(config);
const params = {
id: '23424829',
id: '23424975',
id: '23424977'
// count: 3
};
T.get('trends/place', params, gotData, limit);
function gotData(err, data, response) {
var tweets = data;
console.log(JSON.stringify(tweets, undefined, 2));
}
【讨论】:
您必须使用 Api Key 完成身份验证才能以 JSON 格式获取结果。
另一件事记住 Twitter Api 是有限的。
如果您正在为热门 Twitter 趋势制作网站,请访问此网址 https://twitter-trends.vlivetricks.com/,右键单击 >> 复制源代码并使用您的 Json 变量仅替换趋势名称。
【讨论】: