Skip to content

Instantly share code, notes, and snippets.

@ecavazos
Created February 21, 2012 03:40
Show Gist options
  • Save ecavazos/1873476 to your computer and use it in GitHub Desktop.
Save ecavazos/1873476 to your computer and use it in GitHub Desktop.
People you follow on Twitter who don't follow you.
require 'twitter_oauth'
require 'pp'
consumer_key = '<key>'
consumer_secret = '<secret>'
remote_id = '<id>'
access_token = '<token>'
user = '<screen_name>'
# Add the users_lookup method
module TwitterOAuth
class Client
def users_lookup(options = {})
args = options.map{|k,v| "#{k}=#{v}"}.join('&')
get("/users/lookup.json?#{args}")
end
end
end
twitter = TwitterOAuth::Client.new(
:consumer_key => consumer_key,
:consumer_secret => consumer_secret,
:token => remote_id,
:secret => access_token
)
followers = twitter.followers_ids :screen_name => user
friends = twitter.friends_ids :screen_name => user
fake_friends_ids = friends['ids'].select do |friend_id|
!followers['ids'].include? friend_id
end
fake_friends = []
fake_friends_ids.each_slice(100) do |ids|
users = twitter.users_lookup( :user_id => ids.join(',') )
raise users['errors'].inspect if users.instance_of?(Hash) && users.has_key?('errors')
fake_friends += users
end
pp fake_friends.map { |user| user['screen_name'].downcase }.sort
puts "\nYou have #{ fake_friends_ids.count } FAKE friends."
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment