我在node.js中使用npm-twit通过Twitter搜索api获取推文。
我对编程完全陌生,但我的硕士论文需要它。因此,我获得了具有对搜索请求的完整存档访问权限的高级帐户。
使用标准的免费api访问权限,我的代码可以正常工作。但是现在我不知道如何正确实现访问令牌等。
我尝试将GET
和product
放在不同的位置,并将label
更改为q
,将query
更改为data.statues
,但是我尝试给出的一切我有几个错误代码-如
data.results
或者告诉我tweets.length不存在(即使以前工作过)。
或者简单的“ null” (当我使用这段代码时:
'code: 195, message: 'Missing or invalid url parameter.'
'code: 25, message: 'Query parameters are missing.'
'message: 'Sorry, that page does not exist', code: 34'.
//这是当前无效的代码
T.get('search/tweets/fullarchive/:dev', params , gotData); function gotData(err, data, response){console.log(data)}
)
使用此代码,我得到一个错误var Twit = require('twit');
var config = require('./config');
var T = new Twit({
consumer_key: 'XXX',
consumer_secret: 'XXX',
access_token: 'XXX',
access_token_secret: 'XXX',
timeout_ms: 60*1000,
strictSSL: true,
app_only_auth: true,
PRODUCT: 'fullarchive',
LABEL: 'dev',});
var params = {
query: 'VW',
fromDate:'201801010000',
toDate:'201901010000',
followers_count:1000,
maxResults: 500,
result_type: 'popular',
lang: 'en'
//next: ''
}
T.get('search/tweets/fullarchive/:dev', params , gotData);
//T.get('search/tweets', params , gotData); - gives me all results in standard api
function gotData(err, data, response)
{
var tweets = data.results; //var tweets = data.statuses - gives me what I need in standard api
for (var i = 0; i < tweets.length; i++)
console.log(tweets[i].text, tweets[i].retweet_count,tweets[i].created_at,tweets[i].id_str,tweets[i].favorite_count,);
理想情况下,我想获取有关tweet的信息,包括其文本,创建日期,retweet计数,tweet id,收藏夹计数-如有必要,还可以使用“下一个”令牌。
我将非常感谢您的帮助!