0

私は何かのためにinstagramスクレーパーに取り組んでおり、IDまたはタイムスタンプが最後にあるタグのすべての写真を取得できるかどうかを調べようとしています。

instagram API ドキュメントは、ページネーションに関する実際の情報がないという点で役に立ちません (悪用する必要があると思います)。

誰にもアイデアはありますか?

4

2 に答える 2

0

私はここ数日間、Instagram API を苦労して使ってきたので、ここに私の 2 セントの価値があります。もしアイテム。量が約 25 を超える場合は、前のリクエストで返されたページネーション値を使用して別のリクエストを行う必要があります。

何らかの制御を得るために、最初にすべての画像を繰り返し処理し、結果 (実際の画像ではなく URL のみ) をデータベースに保存します。今、私は好きなように操作できます。更新したいときは (手動で行っていますが、cron ジョブまたはリアルタイム APIを使用することができます)、すべての画像を再読み込みし、DB にあるものと比較して、可能な新しい画像を追加します。次に、私のアプリは私の DB から URL と情報を読み取ります (これは、要求ごとに約 25 枚の画像しか返さない instagram API を経由するよりもはるかに高速です - 入力した「count」パラメーター値に関係なく)リクエスト URL) を取得して表示します。

私は、nsfw や専用のハッシュタグ (コンテスト用) を使用して写真を投稿することを恐れているクライアントのためにこれを開発しています。アプリ。

注意すべきことの 1 つは、ユーザーが自分の写真を削除したときです。これを確認する方法を見つける必要があります。現在(私は怠け者なので)すべての画像を読み込み、jquery を使用して画像の読み込みエラーをチェックしています。画像がある場合は、DB から (ajax 経由で) 画像を削除します。

ページネーションがあなたを助けるかどうかはわかりません.私が見る限り、ページネーションの応答は各ページの実際の画像オブジェクトのIDとは関係がありません-理論的には特定のページにジャンプするページネーションID(つまり日付) 間に十分な数の画像が削除された場合、明日は機能しない可能性があります。

于 2013-04-17T22:09:38.030 に答える
0

最新の 20 枚ではなくすべての画像を取得するには、API 呼び出しに &count=-1 を追加するだけです。これはとても簡単です。いずれの場合も、各 json オブジェクトにタイムスタンプがあります - または、必要に応じて max_tag_id を使用できます

ここで私の投稿をチェックしてください: Instagram API の 20 枚以上の写真を表示する方法はありますか?

* 2014 年 4 月の更新:count=-1は利用できなくなりました。

于 2013-06-20T09:56:57.327 に答える