Scrapy - Exceptions

La description

Les événements irréguliers sont appelés exceptions. Dans Scrapy, des exceptions sont déclenchées pour des raisons telles qu'une configuration manquante, la suppression d'un élément du pipeline d'éléments, etc. Voici la liste des exceptions mentionnées dans Scrapy et leur application.

Lacher un objet

Le pipeline d'articles utilise cette exception pour arrêter le traitement de l'article à tout moment. Il peut s'écrire -

exception (scrapy.exceptions.DropItem)

FermerSpider

Cette exception est utilisée pour arrêter l'araignée à l'aide de la demande de rappel. Il peut s'écrire -

exception (scrapy.exceptions.CloseSpider)(reason = 'cancelled')

Il contient le paramètre appelé reason (str) qui spécifie la raison de la fermeture.

Par exemple, le code suivant montre cette utilisation d'exception -

def parse_page(self, response): 
   if 'Bandwidth exceeded' in response.body: 
      raise CloseSpider('bandwidth_exceeded')

IgnorerRequest

Cette exception est utilisée par le programmateur ou le middleware de téléchargement pour ignorer une requête. Il peut s'écrire -

exception (scrapy.exceptions.IgnoreRequest)

Pas configuré

Il indique une situation de configuration manquante et doit être déclenché dans un constructeur de composant.

exception (scrapy.exceptions.NotConfigured)

Cette exception peut être déclenchée si l'un des composants suivants est désactivé.

  • Extensions
  • Pipelines d'articles
  • Middlewares de téléchargement
  • Middlewares d'araignée

Non supporté

Cette exception est déclenchée lorsqu'une fonctionnalité ou une méthode n'est pas prise en charge. Il peut s'écrire -

exception (scrapy.exceptions.NotSupported)