您好我已经修改了这个旧代码来刮掉Twitter用户名,但由于某种原因它也会刮掉用户ID。我不明白它是如何做到的,因为我在代码中没有看到任何地方" user_id"根据twitter api文档,您应该使用它来获取用户ID。 这是代码
def my_usernames
"UHDTelevisions"
end
def my_userinfo(names)
@client.followers(names)
end
def my_userhash(users)
userhash = {}
users.each do |user|
userhash[user.screen_name] = user.id.to_s
end
return userhash
end
def my_users
my_userhash(my_userinfo(my_usernames))
end
def my_csv(my_users)
CSV.open('./my_users.csv','a+') do |csv|
my_users.each do |k,v|
csv << [k,v]
end
end
答案 0 :(得分:1)
以下是构建哈希{name ⇒ id}
:
userhash[user.screen_name] = user.id.to_s
这里我们已经获得了user
对象,其中包含id
以及其他用户参数。要返回名称列表,可以简单地说:
@client.followers("UHDTelevisions").map &:screen_name
而不是上面的所有代码。
答案 1 :(得分:1)
如果你想保持一个并行结构你可以把它改成my_userarray(因为你只需要值,而不是键值对,我假设)
O(n*log(n))
当然,您还需要更新my_users方法,以反映my_userarray的新方法名称