Pythonでtwitterの情報を取得する

必要なモジュール

インストール

python-twitterを入れれば他のモジュールも入ってくる模様

$ sudo easy_install python-twitter

アプリケーションを登録する

接続に必要なトークンを取得するために、My applications | Twitter Developersで作成するアプリケーションを登録する。

作成したアプリケーションページの「Details」の一番下にある、 「create my access token」を押してアクセストークンを作成しておく。

URLの入力があるけど、後から変更できるので仮のもので問題ない。

チュートリアル

トークン管理ファイル

生成したトークン等を保存するためにseccret.pyを作成します。

  • secret.py
twDict = {
    'consumer_key' : 'xxxxxxxxxxxxxxxxxxxx',
    'consumer_secret' : 'xxxxxxxxxxxxxxxxxxxx',
    'access_token_key' : 'xxxxxxxxxxxxxxxxxxxx',
    'access_token_secret' : 'xxxxxxxxxxxxxxxxxxxx'
}

自分のツイートを取得する

ここから実際の処理を書いていきます。

まずは、自分のツイートを取得する。 これで直近20件のツイートが取得できます。

import twitter
import secret

api = twitter.Api(
    consumer_key = secret.twDict['consumer_key'],
    consumer_secret = secret.twDict['consumer_secret'],
    access_token_key = secret.twDict['access_token_key'],
    access_token_secret = secret.twDict['access_token_secret']


)

# twitter.Statusオブジェクトが返ってくる
status = api.GetUserTimeline('mofumofu3n')                                                           for tweet in status:
    print tweet.text

twitter.Status

以下でドキュメントの確認ができる。

$ pydoc twitter.Status
twitter.Status = class Status(__builtin__.object)
 |  A class representing the Status structure used by the twitter API.
 |  
 |  The Status structure exposes the following properties:
 |  
 |    status.created_at // 作成日
 |    status.created_at_in_seconds # read only
 |    status.favorited
 |    status.favorite_count
 |    status.in_reply_to_screen_name
 |    status.in_reply_to_user_id
 |    status.in_reply_to_status_id
 |    status.truncated
 |    status.source
 |    status.id // ツイートID
 |    status.text // ツイート内容
 |    status.location
 |    status.relative_created_at # read only
 |    status.user // ユーザー
 |    status.urls // 
 |    status.user_mentions
 |    status.hashtags
 |    status.geo
 |    status.place
 |    status.coordinates
 |    status.contributors

ドキュメント

python-twitterのドキュメント読むためには下記のようにする。

英語だけど・・・

$ pydoc twitter.Api