Guest User

Untitled

a guest
Apr 22nd, 2018
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.91 KB | None | 0 0
  1. require 'rubygems'
  2. require 'optiflag'
  3. require 'twitter'
  4.  
  5. Infinity = 1.0/0.0 unless defined? Infinity
  6.  
  7. module DBChecker extend OptiFlagSet
  8. flag "password"
  9. flag "user"
  10. flag "days"
  11.  
  12. and_process!
  13. end
  14.  
  15. username = ARGV.flags.user
  16. password = ARGV.flags.password
  17. days = ARGV.flags.days
  18.  
  19. #clear ARGV for gets to work
  20. ARGV.clear
  21.  
  22. cutoff_date = DateTime.now - days.to_i
  23.  
  24. httpauth = Twitter::HTTPAuth.new(username, password)
  25. twitter = Twitter::Base.new(httpauth)
  26.  
  27. 1.upto(Infinity) do |page|
  28. friends = twitter.friends(:page => page)
  29. break if friends.empty?
  30. friends.each do |friend|
  31. last_status_update = friend.status && DateTime.parse(friend.status.created_at)
  32. if (last_status_update.nil? or last_status_update <= cutoff_date)
  33. puts "Unfollow #{friend.screen_name} (#{friend.name})?"
  34. STDOUT.flush
  35. if gets.chomp.match(/^y(?:es)?$/i)
  36. twitter.friendship_destroy(friend.id)
  37. end
  38. end
  39. end
  40. end
Add Comment
Please, Sign In to add comment