Twitter句柄的名字和姓氏

时间:2015-03-07 12:17:29

标签: twitter

我有一个我要关注的人员名单(名字和姓氏),但我不想谷歌或通过Twitter单独搜索。获取Twitter处理的最佳方式是什么?一些GitHub回购或教程也很好。

3 个答案:

答案 0 :(得分:1)

首先,这个问题是偏离主题的,但我会尝试为你写一个答案。你可以使用twitter api,但如果你只想为你做这件事,这可能有点过头了。

我为您制作了API

我使用KimonoLabs为您制作了一个API。您可以使用它,只需创建一个循环遍历列表的脚本,并每次都请求此api,然后返回结果列表。这是API端点: https://www.kimonolabs.com/api/duwxgie4?apikey=D6UKiTtKU93kv0YJj8i3kFBAbsIjdSTC&q=PERSON%20NAME

& q =是该人姓名的参数。要分隔名字和姓氏,请使用%20,如下所示:Robert%20Keus

这个api的文档在这里: https://www.kimonolabs.com/apis/duwxgie4

如果您需要任何帮助,请告诉我,

卢卡

答案 1 :(得分:1)

Twitter提供“User Search”API请求。

如果您要搜索名为“Ada Lovelace”的用户,则需要向OAuth请求发送

https://api.twitter.com/1.1/users/search.json?q=Ada%20Lovelace

您将获得结果列表。可能有许多人拥有相同的名字和姓氏。

至于如何这样做,这取决于你想要使用的编程语言。

如果您只想要一个可点击的链接,请使用https://twitter.com/search?q=Terence%20Eden

答案 2 :(得分:0)

最新答案@ 2016

第一个解决方案:我编写了以下node.js脚本。您需要access_tokenid精心发布的Google doc电子表格。出于测试目的,我在以下代码中提供了示例电子表格的链接及其id

var Twit = require('twit'),
    async = require('async');

var T = new Twit({
    consumer_key:         'xxxxxxxx',
    consumer_secret:      'xxxxxxxxxxxxxxxxxxxxxxxxxx',
    access_token:         'xxxxxxxxxxx',
    access_token_secret:  'xxxxxxxxxxxxxxxxxxxxxxxxx',
    timeout_ms:           60*1000  // optional HTTP request timeout to apply to all requests.
});

//https://docs.google.com/spreadsheets/d/1n7DxgJTTHZ9w3xwiHokUhXMLkBwpP5c9ZLFmsYFDCic/edit?usp=sharing

var GoogleSpreadsheet = require("google-spreadsheet"),
    _ = require('underscore');

var sheetId = req.params.sheet || "1n7DxgJTTHZ9w3xwiHokUhXMLkBwpP5c9ZLFmsYFDCic",
    sheet = new GoogleSpreadsheet(sheetId);

async.waterfall([
    function (cb) {
        sheet.getRows(1, {}, function (err, rows) {
            if (err) { res.send(err); return;};
            var names = [];
            _.each(rows, function (row) {
                names.push(row.first + " " + row.last);
            });
            cb(null, names);
        });
    },
    function (names, callback1) {

        async.map(names, function(name, cb){
            T.get('users/search', { q: name, page: 1 }, function (err, data, response) {
                if(data.length)
                    cb(null, {screen_name: data[0].screen_name, name:data[0].name});
                else
                    cb(null, {screen_name: "no_data_retrieved", name: name});
            });
        }, function (err, results) {
            callback1(null, results);
        });

    },
    function (users, callback) {
        console.log(users); //**YOU GET ALL DESIRED DATA HERE**
    }
], function (err, result) {
    //handle in memory data
});

第二个解决方案:克隆节点作弊twitter-screen-names,运行npm install并拍摄node server,现在将所有Twitter usernames作为{{1}在浏览器中。

快乐帮助!