2013-04-04 16 views
3

返回鸣叫完整JSON所以我有一些代码:如何从Twitter的Twitter的宝石对象

#twitter api access config up here 
Twitter.status(27558893223) 

,我知道我从那个Twitter.status线所有的鸣叫信息。我想要的不是一个Ruby对象。我需要该推文的完整JSON,这样我就可以直接使用它来填充我的mongodb实例。我可以得到一些关于如何将tweet对象转换为JSON的帮助吗?

谢谢!

回答

0

它主要取决于你想要在你的数据库中填充所有列。文档here提到了您可以从Twitter::Tweet中获取的所有元素的相当不错的信息。

例如,您可以执行下面提到的操作,并将其存储到您的数据库实例中。

Twitter.status(27558893223).source 
Twitter.status(27558893223).from_user 
Twitter.status(27558893223).from_user_id 
Twitter.status(27558893223).lang 

或者你可以做Twitter.status(27558893223).attrs并相应地处理JSON。

让我知道我是否理解错误的问题。

+0

感谢您的ATTRS方法是我没有意识到的! – noname 2013-04-04 14:37:25

2

对于类微博::资料Tweet使用的一个目的.attrs

Twitter.status(27558893223).attrs

对于对象的阵列使用.MAP(& :attrs)

Twitter 。.user_timeline( “[某人的Twitter名]”)地图(&:ATTRS)

下面是一个简单的应用程序西纳特拉返回凯蒂·佩里:)的鸣叫

 
require 'rubygems' 
require 'sinatra' 
require 'sinatra/jsonp' 
require 'twitter'

class TwitterFetcher < Sinatra::Base helpers Sinatra::Jsonp

@@twitter_client = Twitter::REST::Client.new do |config| config.consumer_key = ENV['consumer_key'] config.consumer_secret = #ENV['consumer_secret'] # config.bearer_token = ENV['bearer_token'] config.access_token = # ENV['access_token'] config.access_token_secret = #ENV['access_token_secret'] end

get '/' do result = @@twitter_client.user_timeline("katyperry") jsonp result.map(&:attrs) end end