2015年2月1日日曜日

北海道エリアでつぶやかれているTwitterデータをタダで取得するのだ!

 先日、TwitterのStreaming APIから指定したエリアのつぶやきを取得する際に便利なサービスを紹介しました。

<Twitter分析に便利? Bounding Box検出ツール >http://sapporomkt.blogspot.jp/2014/12/twitterbounding-box.html

 今回は、このサービスを使って具体的に「北海道エリアのつぶやき」を取得する方法を記載します。
なお、北海道エリアのbounding box値(って言い方が正しいか微妙ですが)は
139.33,41.35,145.82,45.52 です。

 以下手順です。

1.Twitter APIキーの取得

まずは、TwitterのAPIを利用するための申請作業を行う必要があります。
ちょっと難しそうに聞こえますが、5分もあれば簡単に取得できます。

(参照)Twitter APIキーの取得方法


 こちらで以下のKeyを取得し、メモ帳にでもコピペしておいてください。
consumer_key
consumer_secret
access_token
access_token_secret


2.RubyスクリプトにKey情報等をコピペ

下記に記載するconsumer_key、consumer_secret、access_token、access_token_secret の右側にある''の間にメモ帳に保持した値をコピペしてください。
合わせて :locations にbounding box値で保持した値をコピペです。

# -*- coding: utf-8 -*-
require 'twitter'

config = {
    :consumer_key => '',
    :consumer_secret => '',
    :access_token => '',
    :access_token_secret => ''
}



client = Twitter::Streaming::Client.new(config)
client.filter({:locations => '139.33,41.35,145.82,45.52'}) do |tweet|
    if tweet.is_a?(Twitter::Tweet)
    File.open("twitter_stream.txt","a"){|file|
       file.puts tweet.text if tweet.lang == "ja"
    }
    end
end



あと、当スクリプトと同じフォルダに、取得したつぶやきを保存するテキストファイルを置いてくださいね。


3.Rubyスクリプト実行!

これで準備完了です! 当RubyスクリプトがあるフォルダでTerminalを開き、
ruby スクリプトファイル名.rb で実行しちゃってください。
Terminal上は何も表示されませんが、エラーにならなければ、テキストファイルにつぶやきが保存されているはずです。

 ちなみに、この現行を書く直前にスクリプトを動かしておいたのですが、20分ほどで50KB以上のつぶやきデータを取得しています。数時間放置しておけば、テキストマイニングにも使えるデータソースになりますよ^^

0 件のコメント:

コメントを投稿