Twitter4j を使うと、デスクトップで動くシンプルな twitter クライアントが java で簡単に作れたりする。
いろいろ難しいことをしようとすると難しいのかもしれないが、twitter にポストしたり、timeline 上の status を取得する等、ごく普通の動作なら、本当に短時間でできてしまう。
さて、Twitter4j (現在 2.1.0) で、timeline などを取得する場合、
String screenName ="xxx";
String password ="xxx";
Twitter twitter = new Twitter(screenName, password);
とした後、(User timeline をとりたいなら、)
List
ってやってポスト (Status) を取得することが出来る(いろいろ省略)。
この時、デフォルトで取得できる分だけでなく、もっと前のものを取得したい場合には、Paging (最新の JavaDoc) を使って、取得する部分を指定する必要がある (本題)。
この場合、上の getUserTimeline() を、以下のようにする。
int page = 1;
int count = 100;
List
Twitter の場合、ページごとに分けて取得した方が便利なことも多いため、Paging が導入されていて (?)、1 ページ何件 (上の例では count) としたとき、何ページ目 (page) を取得するか指定して Status を取得する。
ここで、1 ページあたりの status の数 (count) は上限(最大)は 200 になっている(twitter の仕様に関係して)。Count を 200 より上の値にしても特にエラーは出ないということなので、注意が必要かもとのことです。
なので、これを使って、status をとれる分だけ取るには、count を 200 にして page をどんどん上げ取得していけばいいだろう。なお page は 1 (≠0) から開始。
Paging は他の status の取得でも使うので、覚えておくと良さそう。
0 件のコメント:
コメントを投稿