Python-twoauth
出典: ./techno-devel
開発状況... 95% ぐらい
目次 |
About This
- OAuth でしか使えない、Twitter API の Python 向けラッパーです。
- Basic 認証に対応させるつもりはありません。
- Python v2.6 の標準ライブラリしか使ってません。
- 2.5 だと動かなくなりました。(たぶん。json 入れれば動くかな?)
-
すべてのREST API Method に対応させてあります。- Retweet とか、Lists とかも、完全サポート。
- 最近対応されたのに対応してないかも。
- User Streams, Streaming API に対応してます。
- ライセンスは MIT License です。
- バグ報告などは <info [at] techno-st.net> へ。
Download
ただし、分かる人は現状 git リポジトリにあるやつのほうが安定してるし、バグもつぶされてるし、いいと思います。
Repository
Changes
- v0.1.0
- 取りあえず公開...
How to use
- インストールは、標準的な Python モジュールと同じです。
$ python setup.py build # python setup.py install
- 簡単な使い方は、こんな感じになります。
- Access Token の取得は、"sample/get_access_token.py" を見る or 実行してください。
import twoauth twitterapi = twoauth.api(consumer_key, consumer_secret, access_token, access_token_secret) twitterapi.home_timeline()
- 各 API のメソッドに、twoauth クラスのメソッドがひとつ割り当てられています。
- POST で渡したい引数でオプションのものは、名前付き引数で渡してあげてください。
home_timeline(page = 1, since_id = xxx)
- 各メソッドが返すのは、XML をパースした辞書 (dict) のリストとかになります。
- たとえばこんな感じ... (要素名は、受け取った XML の要素名そのままなので、APIwiki を見てください)
[{'id': '123456', 'text': 'hogehoge', 'user': {'screen_name': 'hoge'}}, {'id': ......]
- 以下は v0.1.0 のメソッド一覧です。APIwiki と対応付けしながら見てみてください。
def public_timeline(self): def home_timeline(self, **params): def friends_timeline(self, **params): def user_timeline(self, user = "", **params): def mentions(self, **params): def rt_by_me(self, **params): def rt_to_me(self, **params): def rt_of_me(self, **params): def status_show(self, _id): def status_update(self, status, **params): def status_destroy(self, _id): def status_retweet(self, _id): def status_retweets(self, _id): def user_show(self, user, **params): def user_search(self, q, **params): def status_friends(self, user = "", **params): def status_followers(self, user = "", **params): def lists_create(self, name, **params): def lists_update(self, _id, **params): def lists_index(self, user = "", **params): def lists_show(self, _id, user = "", **params): def lists_destroy(self, _id, **params): def lists_statuses(self, _id, user = "", **params): def lists_memberships(self, user = "", **params): def lists_subscriptions(self, user = "", **params): def lists_mlist(self, list_id, user = "", **params): def lists_madd(self, member, list_id, user = "", **params): def lists_mremove(self, member, list_id, user = "", **params): def lists_mshow(self, _id, list_id, user = "", **params): def lists_slist(self, list_id, user = "", **params): def lists_sadd(self, list_id, user = "", **params): def lists_sremove(self, list_id, user = "", **params): def lists_sshow(self, _id, list_id, user = "", **params): def dm_list(self, **params): def dm_sent(self, **params): def dm_destroy(self, _id): def dm_new(self, user, text, **params): def friends_create(self, user, **params): def friends_destroy(self, user, **params): def friends_exists(self, user_a, user_b, **params): def friends_show(self, target, source = "", **params): def friends_ids(self, user = "", **params): def followers_ids(self, user = "", **params): def verify_credentials(self): def rate_limit(self, ip_limit = False): def end_session(self): def delivery_device(self, device, **params): def profile_colors(self, **params): def profile_image(self, image, **params): def profile_background_image(self, image, **params): def profile(self, **params): def favorites(self, user = "", **params): def favorite_create(self, _id = "", **params): def favorite_destroy(self, _id = "", **params): def notification_follow(self): def notification_leave(self): def block_create(self, user, **params): def block_destroy(self, user, **params): def block_exists(self, user, **params): def block_list(self, **params): def block_ids(self, **params):
ToDo
- ユーザー認証しないで使えるメソッドは、そのまま使えるようにしたい。
- OAuth の Client じゃなくて、Web から Web の認証もできるようにしたい。