4

だから私はいくつかのコードを持っています:

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

そして、その Twitter.status 行からすべてのツイート情報を取得できることを知っています。私が欲しいのはRubyオブジェクトではありません。そのつぶやきの完全な JSON が必要なので、mongodb インスタンスの作成に直接使用できます。そのつぶやきオブジェクトを単なる JSON に変換する方法を教えてもらえますか?

ありがとう!

4

4 に答える 4

5

でJSON.generateメソッドを使用できませんでしたTweet.attrsか?

于 2013-04-04T07:43:00.267 に答える
2

クラスTwitter::Tweetの 1 つのオブジェクトには、.attrsを使用します。

Twitter.status(27558893223).attrs

オブジェクトの配列には.map(&:attrs)を使用します

Twitter.user_timeline("[誰かのツイッター名]").map(&:attrs)

これは、ケイティ・ペリーのツイートを返すシンプルな Sinatra アプリです:)

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

于 2014-11-02T15:30:35.610 に答える
2

それは主に、DB に入力するすべての列に依存します。ここのドキュメントには、取得できるすべての要素に関するかなり良い情報が記載されていますTwitter::Tweet

たとえば、以下のようなことを行い、それに応じて DB インスタンスに保存できます。

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

Twitter.status(27558893223).attrsまたは、それに応じて JSON を実行して処理することもできます。

質問を間違って理解した場合はお知らせください。

于 2013-04-04T07:43:25.787 に答える