Twitter API は、HTTP ベースで、Search API と REST API があります。今回は、REST API Timeline method の statuses/user_timeline を用います。HTTP ベースなので、curl コマンドで簡単にテストできます。
$ curl 'http://twitter.com/statuses/user_timeline.xml?screen_name=kazmuzik&count=200' > kazmuzik.xml % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 414k 100 414k 0 0 603k 0 --:--:-- --:--:-- --:--:-- 809k $ cat kazmuzik.xml <?xml version="1.0" encoding="UTF-8"?> <statuses type="array"> <status> <created_at>Sun May 10 15:38:12 +0000 2009</created_at> <id>1755243926</id> <text>140文字で表現できる内容です\ が、英語だと日本語の半分以\ 下になってしまいます。ある\ 程度、中身がある場合は、日\ 本語が圧倒的に有利です。こ\ れも、Unicodeが普及してきたおか\ げです。</text> <source>web</source> <truncated>false</truncated> <in_reply_to_status_id></in_reply_to_status_id> <in_reply_to_user_id></in_reply_to_user_id> <favorited>false</favorited> <in_reply_to_screen_name></in_reply_to_screen_name> <user> <id>26517941</id> <name>Kaz Muzik</name> ... <statuses_count>204</statuses_count> <notifications></notifications> <following></following> </user> </status> </statuses> $ |
1回の API call で取得できる上限は 200個です。現在のところ、すでにその上限を超えているので、2ページ目も取得して、c
$ curl 'http://twitter.com/statuses/user_timeline.xml?screen_name=kazmuzik&count=200&page=2' >> kazmuzik.xml $ vi kazmuzik.xml $ |
これで、自分の今までのつぶやきがすべてひとつの XML ファイルに収まりました。ただし、上記の例のように、このままでは、扱いに不便なので、次
Tags: internet, programming