4
スケジューラに存在する重複フィルタとIgnoreVisitedItems middlewareの違いは何ですか?フィルタリング重複要求の処理
スケジューラ内の重複するフィルタが存在していることを示唆しているのGoogleグループのスレッド:http://groups.google.com/group/scrapy-users/browse_thread/thread/8e218bcc5b293532
スケジューラに存在する重複フィルタとIgnoreVisitedItems middlewareの違いは何ですか?フィルタリング重複要求の処理
スケジューラ内の重複するフィルタが存在していることを示唆しているのGoogleグループのスレッド:http://groups.google.com/group/scrapy-users/browse_thread/thread/8e218bcc5b293532
スケジューラ内の重複するフィルタは、それがリセットされますことを意味し(すでに単一のクモのランで見られたURLをフィルタリングその後の実行で)。 IgnoreVistedItemsミドルウェアは、ランの間に状態を維持し、過去に見られた訪問URLを避けますが、最終アイテムURLのみを対象にして残りのサイトを再クロールすることができます(新しいアイテムを見つけるため)。
これは素晴らしいことです。それは、実行の間にURLを再訪するのを避ける方法について私が気づいた別の質問でした。したがって、この答えは両方のクエリを解決します。ありがとう。 – Divick
上記のスナッピースニペットにあるIgnoreVisitedItemsミドルウェアのソースを見ても、訪問したURLはファイルや永続的なストレージに保存されないように見えるので、修正を加えなければ実際には重複フィルタと同じように動作しますスケジューラ – Divick
また、1回の実行とそれ以降の実行とは何を呼び出すのかは不明です。それはスクレーパーを停止し、スクレーパーを再度実行することは、後続の実行か、ダウンロードするURLのセットを呼び出すスクレーパーがシングルランと呼ばれ、別のランとしてダウンロードする別のセットのURLと呼ばれるでしょうか? – Divick