1

25項目のRSSフィードからデータを読み込もうとしています。HTTP経由でRSSファイルをリクエストすると、アイテムが20個しかないと表示されます。

function test($location)
{
    $doc = new DomDocument();
    $doc->load($location);
    $items = $doc->getElementsByTagName('item');
    return $items->length;
}

// Prints 20
echo test('http://www.reddit.com/r/programming/new/.rss?after=t3_');

// Prints 25
echo test('programming.xml');

他のサブレディットからのRSSフィードも試しましたが、同じ結果になりました。

4

2 に答える 2

2

現在の問題がわかります... /r / programs /などのサブredditにアクセスし、[新規]タブに移動して最新の送信を確認する場合、2つの並べ替えオプションがあります。最初のオプションは「rising」で、新進気鋭のエントリのみが表示されます。代替の並べ替え順序は「new」です。

ブラウザで「新しい」並べ替え順序を選択したため、Cookieが保存され、その後、デフォルトの並べ替え順序として使用されました。ただし、コードを介してページにアクセスするには、デフォルトの並べ替え順序が引き続き使用されていたため、さまざまな量の結果が返されました。

並べ替え順序のクエリ文字列をリクエストのURLに追加することで、この問題を解決しました。http://www.reddit.com/r/programming/new/.rss?sort=new

于 2009-12-14T13:19:57.457 に答える
0

フィードの読み込みに問題がある場合は、おそらく何らかの警告が表示されます。

現在、redditフィードのサンプルコードは、14個のアイテムがあることを示しています。そのフィード内のアイテムの数は一定ではありません。したがって、問題は、ローカルコピーがredditからロードしていたものとは異なることです。

于 2009-12-14T03:09:39.133 に答える