如何将 Twitter 用户 ID 转换为 Javascript/jQuery 中的用户名
How can I convert a twitter user ID into a user name in Javascript/jQuery
我有一个正在构建的 Twitter 网络应用程序。它正在关注一组 select 组推特 ID,并且仅根据一组 select 关键字挑选出它们 post 的推文。一切正常,除了我想将数组中的推特 ID 转换为相应的推特用户名(一个接一个),例如 ID 数组是 var trackedHandles;我想将 trackedHandles[i] 转换为用户名并将其打印到实际推文旁边的控制台。所以它在控制台中看起来像这样:@me:这是我的推文这是我的代码 selection 与此相关:
t.stream(
"statuses/filter",
{track: trackedHandles + trackedWords, lang: "en" },
function(stream) {
stream.on('data', function(tweet) {
for (var i= 0; i < trackedData.length; i++) {
if(tweet.text.indexOf(trackedData[i]) > - 1) {
// incriments added value to the word
redisClient.incr(trackedData[i]);
console.log(trackedHandles[i] + ":" + " " + tweet.text + " " );
//console.log(trackedData[i]);
}
}
});
}
);
现在我只是打印 Twitter ID,但我又想打印用户名。我感谢您的帮助。
我自己想出来的!如果将来有人需要知道怎么做:
//Get Screen_Name from tweet object.
function getPosition(str,m, i) { //special helper function to find the nth position of a string.
return str.split(m, i).join(m).length;
}
var snStartingPos = getPosition(tweetObject, "screen_name", 2); //starting position of "screen_name" in tweet object.
var snEndingPos = snStartingPos + 14; //ending position of "screen_name" in tweet object (where we actually want to start).
var unStartingPos = getPosition(tweetObject, "location", 1); //starting position of the word after where we want to end.
var unPrePos = unStartingPos - 3; //subtract that by 3 characters to exclude the unnecessary characters
var snLength = unPrePos - snEndingPos; //this is now the length of the screen_name we want
var screen_name = "@" + tweetObject.substr(snEndingPos, snLength); //get the sub-str that we want (the "screen_name") from tweet object.
//End Get Screen_Name from tweet Object
tweetObject 只是将 tweet 转换为字符串。函数 getPosition,我下了另一个 Whosebug 问题页面:How to get the nth occurrence in a string?
我有一个正在构建的 Twitter 网络应用程序。它正在关注一组 select 组推特 ID,并且仅根据一组 select 关键字挑选出它们 post 的推文。一切正常,除了我想将数组中的推特 ID 转换为相应的推特用户名(一个接一个),例如 ID 数组是 var trackedHandles;我想将 trackedHandles[i] 转换为用户名并将其打印到实际推文旁边的控制台。所以它在控制台中看起来像这样:@me:这是我的推文这是我的代码 selection 与此相关:
t.stream(
"statuses/filter",
{track: trackedHandles + trackedWords, lang: "en" },
function(stream) {
stream.on('data', function(tweet) {
for (var i= 0; i < trackedData.length; i++) {
if(tweet.text.indexOf(trackedData[i]) > - 1) {
// incriments added value to the word
redisClient.incr(trackedData[i]);
console.log(trackedHandles[i] + ":" + " " + tweet.text + " " );
//console.log(trackedData[i]);
}
}
});
}
);
现在我只是打印 Twitter ID,但我又想打印用户名。我感谢您的帮助。
我自己想出来的!如果将来有人需要知道怎么做:
//Get Screen_Name from tweet object.
function getPosition(str,m, i) { //special helper function to find the nth position of a string.
return str.split(m, i).join(m).length;
}
var snStartingPos = getPosition(tweetObject, "screen_name", 2); //starting position of "screen_name" in tweet object.
var snEndingPos = snStartingPos + 14; //ending position of "screen_name" in tweet object (where we actually want to start).
var unStartingPos = getPosition(tweetObject, "location", 1); //starting position of the word after where we want to end.
var unPrePos = unStartingPos - 3; //subtract that by 3 characters to exclude the unnecessary characters
var snLength = unPrePos - snEndingPos; //this is now the length of the screen_name we want
var screen_name = "@" + tweetObject.substr(snEndingPos, snLength); //get the sub-str that we want (the "screen_name") from tweet object.
//End Get Screen_Name from tweet Object
tweetObject 只是将 tweet 转换为字符串。函数 getPosition,我下了另一个 Whosebug 问题页面:How to get the nth occurrence in a string?