Scrapy - wyjątki
Opis
Nieregularne zdarzenia określane są jako wyjątki. W Scrapy wyjątki są zgłaszane z powodu takich przyczyn jak brak konfiguracji, usunięcie elementu z potoku pozycji itp. Poniżej znajduje się lista wyjątków wymienionych w Scrapy i ich zastosowanie.
DropItem
Potok pozycji wykorzystuje ten wyjątek, aby zatrzymać przetwarzanie elementu na dowolnym etapie. Można go zapisać jako -
exception (scrapy.exceptions.DropItem)
ZamknijSpider
Ten wyjątek służy do zatrzymywania pająka przy użyciu żądania wywołania zwrotnego. Można go zapisać jako -
exception (scrapy.exceptions.CloseSpider)(reason = 'cancelled')
Zawiera parametr o nazwie przyczyna (str), który określa powód zamknięcia.
Na przykład poniższy kod przedstawia użycie tego wyjątku -
def parse_page(self, response):
if 'Bandwidth exceeded' in response.body:
raise CloseSpider('bandwidth_exceeded')
IgnoreRequest
Ten wyjątek jest używany przez program planujący lub oprogramowanie pośredniczące do pobierania w celu zignorowania żądania. Można go zapisać jako -
exception (scrapy.exceptions.IgnoreRequest)
Nie skonfigurowane
Wskazuje brakującą sytuację konfiguracyjną i powinien zostać podniesiony w konstruktorze składników.
exception (scrapy.exceptions.NotConfigured)
Ten wyjątek można zgłosić, jeśli którykolwiek z poniższych składników jest wyłączony.
- Extensions
- Potoki pozycji
- Oprogramowanie pośredniczące do pobierania
- Oprogramowanie pośrednie pająka
Niewspierany
Ten wyjątek jest zgłaszany, gdy żadna funkcja lub metoda nie jest obsługiwana. Można go zapisać jako -
exception (scrapy.exceptions.NotSupported)