1

我一直在 ruby​​ 中使用 twitter gem 来获取推文的各种属性。我已成功获取所有属性。但是,当我尝试获取转推时,它总是给我 0 的值。

require 'twitter'
geolocate = Twitter::Geo.new
client = Twitter::Streaming::Client.new do |config|
   config.consumer_secret   ="XXXXXXXXXXXXXXXXX" 
   config.consumer_key       = "YYYYYYYYYYYYYYYYY"
   config.access_token        ="ZZZZZZZZZZZZZZZZZ"
   config.access_token_secret ="AAAAAAAAAAAAAAAAA"
end
client.filter(:locations => "-122.75,36.8,-121.75,37.8,-74,40,-73,41,-84.32,33.84,-75.45,36.58") do |object| 
if(object.is_a?(Twitter::Entities))
 if (object.geo.longitude.nil? == false)
   if(object.hashtags?) 
      puts  "Tweet: " +object.text.to_s if object.is_a?(Twitter::Tweet)
      puts  "Created At: " +object.created_at.to_s
      puts  "UserName: " +object.user.name.to_s
      puts  "retweets: " +object.retweet_count.to_s
     end
   end
  end
end

转推总是给我零值
下面是一些用户的示例输出。

Tweet: #stevienicks #vibez champagne satin shirt/vest with tail... Has back waist tie, small/medium $32… https://t.co/m7I1rTEUeM
Created At: 2015-04-15 08:03:20 -0400
UserName: MAHPs Vintage 
retweets: 0
______________________________________________

Tweet: Kicking off day 2 of our spring leadership conference with a continuation of @JohnCMaxwell 's 5 levels of #leadership http://t.co/hNNC0tdYni
Created At: 2015-04-15 08:03:20 -0400
UserName: Hendrick Automotive 
retweets: 0
_____________________________________________

Tweet: Thanks God for another day!
Obrigado Deus por mais um dia 
#GoodMorning… https://t.co/klMwtfr7w3
Created At: 2015-04-15 08:03:29 -0400
UserName: Leonnardo Lima
retweets: 0
______________________________________________
Tweet:  #duke #whereisthegiraffeemoji #champs @ Monroe your Boat ⛵️ https://t.co/bw1AV67GMY
Created At: 2015-04-15 08:03:30 -0400
UserName: Gossip Garner
retweets: 0

那么有没有办法让特定用户转发
任何帮助非常感谢。

4

1 回答 1

0

retweet_count方法返回一个只读整数。如图所示是Ruby 的 Tweet 文档。我想它是不可变的。

你应该试试这个puts "retweets: #{object.retweet_count}"

此外,您不需要将每个属性都更改为字符串来打印它。只需如上所示使用它,您就应该做得很好。

于 2015-04-15T16:36:18.327 回答