Frage

Ich scrapy bin mit verschiedenen Seiten zu kriechen, für jeden Standort Ich habe ein Element (verschiedene Informationen extrahiert)

Nun, zum Beispiel habe ich eine generische Pipeline (die meisten Informationen ist das gleiche), aber jetzt habe ich eine Google-Suche Antwort bin kriechen und die Pipeline muß unterschiedlich sein.

Zum Beispiel:

GenericItem verwendet GenericPipeline

Aber die GoogleItem verwendet GoogleItemPipeline, aber wenn die Spinne krabbelt es versucht GenericPipeline statt GoogleItemPipeline zu verwenden .... wie ich die Pipeline Google Spinne verwenden müssen?

angeben
War es hilfreich?

Lösung

Jetzt nur ein Weg - überprüfen Einzelteilart in Pipeline und verarbeiten oder Rückkehr „as is“

pipelines.py :

from grabbers.items import FeedItem

class StoreFeedPost(object):

    def process_item(self, domain, item):
        if isinstance(item, FeedItem):
            #process it...

        return item

items.py :

from scrapy.item import ScrapedItem

class FeedItem(ScrapedItem):
    pass
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top