Guest User

Untitled

a guest
Apr 7th, 2018
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.37 KB | None | 0 0
  1. #!/usr/bin/ruby
  2.  
  3. require 'rubygems'
  4. require 'rubytter'
  5. require 'yaml'
  6. require 'pit'
  7. require 'pp'
  8.  
  9. def to_csv(users)
  10. open('friends.csv', 'w') do |f|
  11. uesrs.each do |user|
  12. f.puts "#{user.screen_name},#{user.id}, #{user.name}, #{user.description.to_s.gsub(/\r\n/,'')}"
  13. end
  14. end
  15. end
  16.  
  17. def to_yaml(users, filename)
  18. users.to_yaml
  19. open(filename, 'w') do |f|
  20. YAML.dump(users, f)
  21. end
  22. end
  23.  
  24. def get_friends(client, username)
  25. friends = Array.new
  26. last = nil
  27. begin
  28. last = client.friends(username, :cursor => last ? last.next_cursor : -1)
  29. friends.concat(last.users)
  30. rescue Timeout::Error, StandardError
  31. puts "print Timeout::Error, StandardError"
  32. break
  33. end until last.next_cursor == 0
  34. return friends
  35. end
  36.  
  37. def get_followers(client, username)
  38. followers = Array.new
  39. last = nil
  40. begin
  41. last = client.followers(username, :cursor => last ? last.next_cursor : -1)
  42. followers.concat(last.users)
  43. rescue Timeout::Error, StandardError
  44. puts "print Timeout::Error, StandardError"
  45. break
  46. end until last.next_cursor == 0
  47. return followers
  48. end
  49.  
  50. def create_client
  51. config = Pit.get("twitter")
  52. username = config['username']
  53. password = config['password']
  54. return Rubytter.new(username, password)
  55. end
  56.  
  57. username = 'kayakaya'
  58.  
  59. client = create_client
  60. to_yaml(get_friends(client, username), 'friends.yaml')
  61. to_yaml(get_followers(client, username), 'followers.yaml')
Add Comment
Please, Sign In to add comment