加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 使用tweetstream和超时

发布时间:2020-12-17 02:04:25 所属栏目:百科 来源:网络整理
导读:Ruby版本:2.0.0-p0 Mac – 山狮 以下是我的代码(tw_stream_track.rb): require 'tweetstream'TweetStream.configure do |config| config.consumer_key = 'xxxxxxxxxxxxxxx' config.consumer_secret = 'xxxxxxxxxxxxxxx' config.oauth_token = 'xxxxxxxxxxx
Ruby版本:2.0.0-p0
Mac – 山狮

以下是我的代码(tw_stream_track.rb):

require 'tweetstream'

TweetStream.configure do |config|
  config.consumer_key       = 'xxxxxxxxxxxxxxx'
  config.consumer_secret    = 'xxxxxxxxxxxxxxx'
  config.oauth_token        = 'xxxxxxxxxxxxxxx-xxxxxxxxxxxxxxx'
  config.oauth_token_secret = 'xxxxxxxxxxxxxxx'
  config.auth_method        = :oauth
end

client = TweetStream::Client.new

client.on_error do |message|
  puts message
end

client.track('apple','microsoft','samsung') do |status|
  puts "#{status.text}"
end

当我从终端运行它时:

ruby tw_stream_track.rb

我得到以下内容:

/Users/mine/.rvm/gems/ruby-2.0.0-p0/gems/tweetstream-2.5.0/lib/tweetstream/client.rb:436:in `block in connect': Failed to reconnect after 11 tries. (TweetStream::ReconnectError)
    from /Users/mine/.rvm/gems/ruby-2.0.0-p0/gems/em-twitter-0.2.2/lib/em-twitter/connection.rb:296:in `call'
    from /Users/mine/.rvm/gems/ruby-2.0.0-p0/gems/em-twitter-0.2.2/lib/em-twitter/connection.rb:296:in `invoke_callback'
    from /Users/mine/.rvm/gems/ruby-2.0.0-p0/gems/em-twitter-0.2.2/lib/em-twitter/connection.rb:268:in `rescue in schedule_reconnect'
    from /Users/mine/.rvm/gems/ruby-2.0.0-p0/gems/em-twitter-0.2.2/lib/em-twitter/connection.rb:263:in `schedule_reconnect'
    from /Users/mine/.rvm/gems/ruby-2.0.0-p0/gems/em-twitter-0.2.2/lib/em-twitter/connection.rb:93:in `unbind'
    from /Users/mine/.rvm/gems/ruby-2.0.0-p0/gems/eventmachine-1.0.3/lib/eventmachine.rb:1440:in `event_callback'
    from /Users/mine/.rvm/gems/ruby-2.0.0-p0/gems/eventmachine-1.0.3/lib/eventmachine.rb:187:in `run_machine'
    from /Users/mine/.rvm/gems/ruby-2.0.0-p0/gems/eventmachine-1.0.3/lib/eventmachine.rb:187:in `run'
    from /Users/mine/.rvm/gems/ruby-2.0.0-p0/gems/tweetstream-2.5.0/lib/tweetstream/client.rb:388:in `start'
    from /Users/mine/.rvm/gems/ruby-2.0.0-p0/gems/tweetstream-2.5.0/lib/tweetstream/client.rb:131:in `filter'
    from /Users/mine/.rvm/gems/ruby-2.0.0-p0/gems/tweetstream-2.5.0/lib/tweetstream/client.rb:98:in `track'

这是我第一次使用tweetstream,从文档中看来,这似乎就是我应该做的.我错过了什么?

解决方法

我听说TweetStream在ruby 2.0.0上遇到了一些问题,你试过ruby 1.9.3吗?

UPDATE

我刚试了一下,你的代码与ruby 1.9.3(与rvm一起安装)一起工作正常.我唯一的一点是,流似乎在一段时间后停止检索新消息.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读