twittered

twittered

twittered は Twitter API を利用するための Java 用のライブラリである。Twitter API v2 に対応している。

導入

Maven を使っている場合には簡単に導入することができる。

pom.xml に以下のように記述する。

    <dependency>
     <groupId>io.github.redouane59.twitter</groupId>
     <artifactId>twittered</artifactId>
     <version>2.13</version>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.7.32</version>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-simple</artifactId>
      <version>1.7.32</version>
      <scope>test</scope>
    </dependency>

ロギングのライブラリとして slf4j が組み込まれている。 なお、Eclipse 上の Maven では実行時に以下の警告が表示されることがあるが、ログの出力は必要としないので無視してよい。

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

プログラミング

主なクラス・インタフェース

TwitterClient
Twitter とのやり取りをするクラス。 ユーザ認証のほか、API のリクエストに対応するメソッドが用意されている。 リクエストを繰り返して全件取得するメソッドもある。
User
ユーザのインタフェース。Id、名前、表示名のほか、ツイート数、フォロー数などが取得できる。
AdditionalParameters
リクエストの際のパラメータ。since_id, until_id, start_time, end_time, max_results など。
TweetList
レスポンス。レスポンスの内容として List<TweetV2.TweetData>, TweetMeta, Includes を持つ。
TweetMeta
レスポンスのメタ情報として newest_id, oldest_id, next_token, result_count を持つ。
TweetV2.TweetData
レスポンスに含まれるツイート。text, author_id などを持つ。

検索

TwitterSearcher.java

特定ユーザのツイートを取得

UserTimelineViewer.java