0

私は 30 分ごとに Y 国の Twitter のトレンド トピックをデータベースに保存しています。問題ありません。今、研究目的で、これらのトレンド トピックに一致するツイートをできるだけ多く取得したいと考えています。

トレンドのパターンを調べたいので、トレンドトピックごとに、トレンドのピークを検知した日を中心に最低3日分の連続ツイートデータが欲しいです。それを達成するために、私は次のことをすることを考えました:

X 日目にいるとします。X-2 日目の固有の傾向を取得し、すべての傾向について、間隔 [X-3, X-1]、つまり 3 日間で傾向に一致するツイートを探すことができます。ただし、ここでの問題は Twitter のレート制限です。X-2 日目に 100 件のトレンド トピックがあり、20 件の GET 検索リクエスト/トレンドを作成した場合、合計 2,000 件のリクエストを行うことになり、Twitter の 350 時間あたりのレート制限を超えます。1 時間あたり 300 件の要求を行うと、1 日分のデータを取得するのに 6 時間以上かかることになります...

トレンドに関連するツイートを取得する他の (より良い) 方法を知っている人はいますか?

前もって感謝します

4

1 に答える 1

1

Twitter ストリーミング API?

Twitter Streaming API は、過去のツイートを配信しません。サーバー接続が確立された時点からのツイートのみを受信します。検索 API は、現在のクエリに一致するツイートを理論上最大 7 日前まで返しますが、それは完全に Twitter の現在の負荷次第です。(注* - この間隔は 24 時間と短い場合もあります。さらに、ツイートの数に関係なく、最大 1,500 ツイートしか受信できないという制限があります。)

ストリーミングからより多くのツイートを取得する方法はありますか?

私が知っているものはありません。ただし、検索またはストリーミング API の切り替えを検討している場合は、以下の情報を参照してください。

ケースを選択してください:

  • リアルタイム データが必要で、リクエスト数が多い場合:

ストリーミング API を利用する

ストリーミング API では、接続をアクティブにしておく必要があります。これには、最新のツイートを取得するための無限ループを持つサーバー プロセスが必要です。

アドバンテージ

1)結果取得のラグ: この方法で配信されるツイートは基本的にリアルタイムであり、ツイートが投稿されてから API から受信されるまでに最大で 1 ~ 2 秒のタイムラグがあります。

2)レート制限なし。

  • 時間範囲に関係なく集計データが必要で、リクエスト数が多くない場合:

検索APIに行く

検索 API は 2 つの方法の中で実装が簡単ですが、レート制限があります。各リクエストは最大 100 ツイートを返します。ページ パラメーターを使用して最大 15 ページをリクエストできます。単一のクエリ。

アドバンテージ

1) 過去のツイートを探す: ストリーミング API は過去のツイートを配信しないため、この領域ではデフォルトで検索 API が優先されます。

2) 実装が容易

于 2012-03-28T08:12:12.907 に答える