0

OffsiteMiddleware からカスタム SpiderMiddleware を作成しました。元のクラスからの単純なコピーと貼り付け、おそらくより良い方法が存在します。

フィルタリングされたオフサイト ドメインを収集します。私のパイプラインは機能します。

しかし、アイテムをパイプラインに戻す方法がわかりません。

ご協力いただきありがとうございます。

def process_spider_output(self, response, result, spider):
    items = []
    for x in result:
        if isinstance(x, Request):
            if x.dont_filter or self.should_follow(x, spider):
                yield x
            else:
                domain = urlparse_cached(x).hostname
                if domain and domain not in self.domains_seen[spider]:
                    self.domains_seen[spider].add(domain)
                    # ***My items ===> items.append(OutboundsLinks(url = domain))***
        else:
            yield x
4

1 に答える 1