Selbstreferenzierung ist klasse
Du hast wahrscheinlich bemerkt, dass wir in der Spider-Klasse in den Methoden start_requests
und parse
immer das Argument self
eingeben (schau einfach in den Beispielcode in dieser Aufgabe). So können wir zwischen Methoden innerhalb der Klasse referenzieren. Wenn wir also innerhalb der Methode start_requests
auf die Methode parse
verweisen wollen, müssen wir self.parse
und nicht nur parse
schreiben. self
sagt dem Code, was er tun soll: „Suche in der gleichen Klasse wie start_requests
nach einer Methode namens parse
, die du verwenden kannst.“
In dieser Aufgabe bekommst du die Gelegenheit, mit dieser „Selbstreferenzierung“ zu spielen.
Diese Übung ist Teil des Kurses
Web Scraping in Python
Anleitung zur Übung
- Füge das benötigte
scrapy
-Objekt in die KlasseYourSpider
ein, um denscrapy
-Spider zu erstellen. - Übergib das String-Argument
"Hello World!"
, um die Lücke in der Methodestart_requests
auszufüllen und die Methodeprint_msg
zu verwenden.
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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 )