ストリーミングAPI

TwitterTwitter API 旧仕様

概要

 状態:  閲覧数:1,693  投稿日:2016-12-09  更新日:2019-03-07
すべてのツイートを取得できるわけではない
・「REST APIs」より大量にツイートを取得できるが、それどもすべてのツイートを取得できるわけではない

過去は遡れない
・「いま」どんなTweetがツイートされているかをリアルタイムに取得するAPI
・過去のTweetsは含まれない
・マイナーなワードを指定すると、ノーリアクションとなったりもする


注意点


同一アカウントからの同時接続数は1本のみ
・同一アカウントから2本以上の接続があった場合、古い接続は強制的に切断される

使用するHTTPライブラリ
・レスポンスボディを全て読み込んでから返すタイプではなく、順次読み込んでいけるタイプのものでなくてはならない

サーバは接続の維持のために空行を送り返すことがある
・クライアントはそれを許容できる作りでなくてはならない

通常のstatusの他に、「ユーザがstatusを削除した」という通知など、他の情報も混ざって送られてくる
・適切に処理する必要がある

エラーや通信の遅延など、様々な要因によって接続が切断されることもある
・必要ならば自動で再接続する仕組みを組み込む

一部のAPIは膨大な量のデータを連続して返す
・それを受けるプログラムはパフォーマンスに関して相当な努力が必要い

ストリーミングAPIの種類

 閲覧数:437 投稿日:2016-12-09 更新日:2016-12-10

ストリーミングAPIの種類


Streamed Tweets
・垂れ流し系
・Public Timeline(パブリックタイムライン)の内容、つまり鍵のかかっていない発言を取得

User Stream
・特定ユーザの発言追跡系
・単一ユーザーのタイムライン、イベントを取得

Site Stream
・特定キーワードの抽出系
・複数ユーザーのタイムライン、イベントを取得


Streaming APIs
ストリーミングAPI - Twitter 開発者ドキュメント 日本語訳

Streamed Tweets

 閲覧数:439 投稿日:2016-12-10 更新日:2016-12-10

sample


パブリックなツイートのうち1%を取得

エンドポイント(GET)
・https://stream.twitter.com/1/statuses/sample.json

パラメータ
・なし

レスポンス

・statusオブジェクトのjson (REST APIと同じ)


filter


指定した条件のツイートを取得

エンドポイント(POST)
・https://stream.twitter.com/1/statuses/filter.json

パラメータ
follow
・指定ユーザーIDのツイートを取得 follow=1235,5678

track
・指定キーワードを含むツイートを取得
・1キーワードは60文字まで
・日本語はトークナイズされな
・日本語ハッシュタグは指定可能
・track=%25twtr_hack,%25twtter4j 

locations
・区域を指定してツイートを取得
・locations=138.927,35.500,139.932,35.795 南西 北東 139.932,35.795 
・経度・緯度順なのに注意138.927,35.500

レスポンス
・statusオブジェクトのjson (REST APIと同じ)


旧 Twitter API 分類 / REST APIs / Streaming APIs



週間人気ページランキング / 4-9 → 4-15
順位 ページタイトル抜粋 アクセス数
1 GitHubリモートリポジトリ名には日本語を使用できない。使用すると、ハイフンへ自動置換されてしまう | GitHub(Git) 4
2 we are unable to approve your developer application at this time. | Twitter Developer(Twitter) 2
2 Twitter 複数アカウントでPOSTしたい | Twitter Developer(Twitter) 2
2 TwitterOAuth では、画像URL を指定した画像投稿は出来ない(と思う)。ライブラリを使用しなければ出来るから、Twitter API の制限ではない(と思われる)  | Twitter 2
2 teratailでは質問しない | プログラミング 2
2 「Twitterデータ」対応 | Twitter Developer(Twitter) 2
2 Windows10で使用できるGitクライアント | GitHub(Git) 2
3 「Google AdSense」と「iOSアプリ開発」の共通点 | Webサービスビジネス 1
3 Webサイト制作履歴 | Webサービス開発 1
3 アクセス数が少ない Webサイト(開発ブログ) を非公開へ変更 | Webサービス開発 1
3 13.作業ディレクトリ内の変更をステージングエリアへ追加してコミット候補にする / 14.インデックスに追加されたファイルをコミットする(コミットメッセージも指定する) / 15.ローカルリポジトリ(mainブランチ)(の変更)を送信して、リモートリポジトリ(「origin」上の同名ブランチ)へ反映させる 1
3 Webサイト終了プライベート手順 | Webサービス開発 1
3 トラブル発生する度に「Git GUI」を探すが、いつも「Git Bash」が一番じゃん、という結論になる。 | GitHub(Git) 1
3 「既存Twitterアプリが使用できる」からと言って「Twitter開発者アカウント」を保持しているとは限らない | Twitter Developer(Twitter) 1
3 GitHub への PUSH へ 1回成功したぐらいでは、Git 理解したことには全然ならない | Git BASH(Git) 1
3 同じ携帯電話番号でも、複数の「Twitter Developers」アカウントを作成可能 | Twitter Developer(Twitter) 1
3 電話番号認証を新規で行う(SMSメールを受信する)度に、(以前の該当アカウントでは)下記メールを受け取る 1
3 リファクタは、開発が一区切りついた段階でなるべく実行した方が良い | Webサービス開発 1
3 Twitter API 1.0 | Twitter API 旧仕様(Twitter) 1
3 「Twitter Developers」でApp作成 | Twitter Developer(Twitter) 1
2025/4/16 1:02 更新