山が見えるテラス付きログハウスでダラダラ生きていたい

農学部を出てITエンジニアをしている虚しい人の徒然日記

Twitter API v2 を使ってツイートの検索結果を取得する

API からツイートの検索結果を取得する必要に迫られたのだが、比較的最近 Twitter API のバージョンは v1.1 から v2 へのマイグレーションが開始されたようで、ググった感じでは v1.1 と v2 の情報が錯綜しているような。というわけで、v2 でツイートの検索結果を取得する方法について curl を使って簡単に書き留めておくことに。

事前準備

  1. まずこのページデベロッパーとして登録する。
  2. Project と App を作成する。

ここまでやると API Key / API Key Secret / Bearer Token が発行されるはず。ツイートの検索結果を取得するだけなら、使うのは Bearer Token のみ。

curlAPI を叩く

以下のとおり。${} を適宜変換してください。

curl https://api.twitter.com/2/tweets/search/recent?query=${検索クエリ} \
  -H "Authorization: Bearer ${Bearer Token}" \
  • 検索クエリについてはこのページを参照。普通に "ごはん" みたいなワードを入れて検索することもできるし、色々条件指定が可能。

  • API 仕様についてはこのページを参照。

  • 上記は直近 7 日間のツイート内から検索する、Recent search という API を使用している。過去のものを含めた Full-archive search という API もあるが、こちらは Academic Research access というプラン?が必要らしい。

  • 上記の curl だと非常に限られた情報しか取れないので、画像の URL を取得したい場合など、詳細な情報が欲しい場合には、クエリ文字として指定しなければならない。このあたりも上に挙げた API ドキュメント書いてあるので、適宜参照してください。

  • 残念ながら、API の検索結果をうまいこと Web ページに表示してくれるようなものは今のところ無さそう。めぼしいサードパーティのライブラリなども見つからなかった。