Вопрос Получение твиттер-фолловеров в csv

Больше
4 мес. 2 нед. назад #1 от yotson
Возможно ли получить всех твиттер-фолловеров аккаунта в csv-файл? Был бы благодарен за развернутый ответ, впервые по работе возникла такая задача.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
4 мес. 2 нед. назад #2 от serge
Док, вы не уточнили, на каком именно языке программирования / фреймворке ищете решение.
Потому перенес покамест ваш вопрос в актуальную для нас категорию Ruby on Rails, на этом фреймворке задача решается крайне несложно, привожу здесь одно из целого ряда возможных решений.
Источник: github.com/gcba/get_twitter_followers

require 'twitter'
require "csv"


client = Twitter::REST::Client.new do |config|
  config.consumer_key        = "XXX"
  config.consumer_secret     = "XXX"
  config.access_token        = "XXXXXX"
  config.access_token_secret = "XXX"
end


def get_follower_ids(client, user_id)
  follower_ids = []
  next_cursor = -1
  while next_cursor != 0
    cursor = client.follower_ids(user_id, :cursor => next_cursor)
    follower_ids.concat cursor.attrs[:ids]
    next_cursor = cursor.send(:next_cursor)
  end
  follower_ids
end


def get_friend_ids(client, user_id)
  friend_ids = []
  next_cursor = -1
  begin
    while next_cursor != 0
      cursor = client.friend_ids(user_id, :cursor => next_cursor)
      friend_ids.concat cursor.attrs[:ids]
      next_cursor = cursor.send(:next_cursor)
    end
  rescue Twitter::Error::Unauthorized
    []
  end
  friend_ids
end
 

def get_followers_info(client)
  friends = []
  get_follower_ids(client, client.user.id).each_slice(100) do |ids|
    friends.concat client.users(ids)
  end
  friends
end

CSV.open("followers.csv", "w") do |csv|
  followers = get_followers_info(client)
  total = followers.count
  followers.each_with_index do |user, index|
    print "\r#{index}/#{total} completo"
 
    csv << [user.id, user.name, user.description, user.location, user.uri.to_s]
  end
end

А я смогу! - А поглядим! - А я упрямый!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
4 мес. 2 нед. назад #3 от yotson
попробую, отпишусь.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.