Skip to content

Instantly share code, notes, and snippets.

@kylemcdonald
Created June 28, 2012 15:47
Show Gist options
  • Save kylemcdonald/3012110 to your computer and use it in GitHub Desktop.
Save kylemcdonald/3012110 to your computer and use it in GitHub Desktop.
Loads a list of followers from the Twitter REST API and steps through them, saving basic information about their follower and friend counts.
import simplejson as json
import urllib
followers = json.load(open("followers.json"))["ids"]
offset = 100
alldata = []
csv = "name\tfollowers\tfriends\tstatuses\tfollowing\n"
for i in range(1+len(followers) / offset):
idx = i * offset
users = followers[idx:idx+offset]
user_id = ','.join(str(x) for x in users)
print 'loading '+str(len(users))+' users from '+str(idx)
url = 'https://api.twitter.com/1/users/lookup.json'
params = urllib.urlencode({'user_id': user_id})
data = urllib.urlopen(url, params).read()
alldata += json.loads(data)
for user in alldata:
csv += '\t'.join(str(x) for x in [
user['screen_name'],
user['followers_count'],
user['friends_count'],
user['statuses_count'],
user['following']]) + '\n'
open('cache/'+str(i)+'.json','w').write(data)
open('all-followers.csv','w').write(csv)
open('all-followers.json','w').write(json.dumps(alldata))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment