Självrefererande med klasser
Du har säkert lagt märke till att vi alltid skickar med argumentet self i metoderna start_requests och parse inuti spindelklassen (titta bara i exempelkoden för den här övningen!). Det här gör det möjligt att referera mellan metoder inom samma klass. Om vi till exempel vill anropa metoden parse inifrån start_requests, skriver vi self.parse i stället för bara parse. Det self gör är att tala om för koden: "Leta efter en metod som heter parse i samma klass som start_requests."
I den här övningen får du chansen att utforska den här typen av självreferens.
Den här övningen är en del av kursen
Webbskrapning i Python
Övningsinstruktioner
- Fyll i det scrapy-objekt som krävs i klassen
YourSpiderför att skapa scrapy-spindeln. - Skicka strängargumentet
"Hello World!"för att fylla i det tomma stället i metodenstart_requestsså att metodenprint_msganvänds.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Import scrapy library
import scrapy
# Create the spider class
class YourSpider( ____ ):
name = "your_spider"
# start_requests method
def start_requests( self ):
self.print_msg( ____ )
# parse method
def parse( self, response ):
pass
# print_msg method
def print_msg( self, msg ):
print( "Calling start_requests in YourSpider prints out:", msg )
# Inspect Your Class
inspect_class( YourSpider )