RSSリーダーアプリケーションを作成しています。リンクされたrssの古いアイテムを取得する必要があります。たとえば、一部のWebrss結果カウントが少なすぎます。アプリケーションチェックの時間範囲が長すぎます。時々いくつかのニュースを失います。
どうすればrssの古いアイテムを入手できますか?
グーグルリーダーを下にスクロールすると、リーダーは前のアイテムを表示しました。
RSSリーダーアプリケーションを作成しています。リンクされたrssの古いアイテムを取得する必要があります。たとえば、一部のWebrss結果カウントが少なすぎます。アプリケーションチェックの時間範囲が長すぎます。時々いくつかのニュースを失います。
どうすればrssの古いアイテムを入手できますか?
グーグルリーダーを下にスクロールすると、リーダーは前のアイテムを表示しました。
これを試してくださいhttp://www.google.com/reader/atom/feed/ {{}}なしでrssfeedへの完全なURL?n = 5000
Googleはこれらのアイテムを保存して、フィードに含まれていなくても表示できると思います。フィードはユーザーごとではなくグローバルに保存される可能性があるため、Googleリーダーではフィードを追加する前のアイテムが表示される場合もあります。
はい、@someoneが推奨する戦略がこれに役立ちます。それを拡張する:
Googleリーダーの非公式APIを使用すると、フィードから古いアイテムを要求できますが、非常に遅くなります(たとえば、10000アイテムを要求する場合)。そのため、一度要求して、自分の側でキャッシュする必要があります。
10000〜20000を超える必要がある場合は、Googleサーバー側でタイムアウトが発生する可能性があります。これを支援するために、おそらく毎回1000か何かのアイテムを要求し(http://www.google.com/reader/atom/feed/)、ページングに継続パラメーターを使用することができます。私はこれを使ったことがありませんが、必要なものを約束できるパラメーター(c、継続用)が含まれています。ここで説明されているように(「アイテムのアトムセット」セクションで):
継続プロセスに使用される文字列。各フィードはすべてのアイテムを返すのではなく、特定の数のアイテムのみを返します。アトムフィード(gr:continuationという名前で)には、continuationという文字列があります。その文字列をこのパラメータの引数として追加するだけで、次のアイテムを取得できます。
もう1つ、そのAPIを使用する前にGoogleリーダーにログインする必要があります。そのためのコードが必要な場合は、この他の質問に対する私の答えを確認してください。
それが役に立てば幸い!
Googleリーダーは約1年前にシャットダウンしたので、代替品を探している場合はSuperfeedrを試してみることをお勧めします。