Skip to content

Instantly share code, notes, and snippets.

@zeiv
Created October 10, 2017 22:16
Show Gist options
  • Save zeiv/1bafe1dc4ea693db775dcad388bb731c to your computer and use it in GitHub Desktop.
Save zeiv/1bafe1dc4ea693db775dcad388bb731c to your computer and use it in GitHub Desktop.
twitter-friends-to-xlsx-exporters
/*
Twitter Exporter - Save Friends to XLSX
-------------------------------------------------
© 2017 Xavier Bick under the MIT License
Usage via Command Line:
$ node twitter-exporter.js <consumer_key> <consumer_secret> <access_token_key> <access_token_secret> <twitter_handle_to_export>
Requirements:
'twitter' and 'xlsx' NPM packages, installed locally or globally.
*/
const Twitter = require('twitter');
const XLSX = require('xlsx');
const client = new Twitter({
consumer_key: process.argv[2],
consumer_secret: process.argv[3],
access_token_key: process.argv[4],
access_token_secret: process.argv[5]
})
client.get('friends/list', {screen_name: process.argv[6], count: 200}).then( (friends) => {
let friendsAoa = [['handle', 'displayName', 'link']];
for (var i in friends.users) {
friendsAoa.push([
'@' + friends.users[i].screen_name,
friends.users[i].name,
'https://twitter.com/' + friends.users[i].screen_name
])
}
let ws = XLSX.utils.aoa_to_sheet(friendsAoa);
let wb = { SheetNames:[], Sheets:{} };
wb.SheetNames.push('Friends');
wb.Sheets['Friends'] = ws;
XLSX.writeFile(wb, process.argv[6] + '_friends.xlsx');
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment