【Ruby】Twitter API 1.1でツイート内容や画像を取得する

Twitter APIを使ってツイートのテキストや、画像のURLを取得してみたいと思います。

ツイートテキストを取得

これは検索ワードの最新10件を取得するものです。

require 'twitter'
client = Twitter::REST::Client.new do |config|
config.consumer_key        = "Consumer key"
config.consumer_secret     = "Consumer Secret"
config.access_token        = "Access Token"
config.access_token_secret = "Access Token Secret"
end
word = "検索ワード" + " exclude:retweets"
count = 0
client.search(word, :result_type => "recent").attrs[:statuses].each do |tweet|
break if count > 9
puts tweet[:text]
count += 1
end

「Consumer Key」、「Consumer Secret」、「Access Token」、「Access Token Secret」のところには自分で取得したキーを設定しておきます。取得方法は調べればすぐに見つかると思います。

検索ワードのところの「exclude:retweets」でリツイートを検索対象から除外しています。

画像URLを取得

次に、画像付きツイートから画像のURLだけを取ってくるようにしてみます。

require 'twitter'
client = Twitter::REST::Client.new do |config|
config.consumer_key        = "Consumer key"
config.consumer_secret     = "Consumer Secret"
config.access_token        = "Access Token"
config.access_token_secret = "Access Token Secret"
end
word = "検索ワード" + " exclude:retweets"
count = 0
client.search(word, :result_type => "recent", :include_entities => true).each do |tweet|
tweet.media.each do |media|
break if count > 9
puts media.media_url
count += 1
end
end

実行するとこんな感じになりました^^
20140629180844

ちなみに、APIの制限で検索は15分に180回までとなっているので注意が必要です!

SmallMemo SmallMemo
超シンプルなメモアプリです。
関連記事