Författarnamn
I den här övningen har vi skapat en spindelklass som, när den är klar, hämtar författarnamnen från en förkortad version av DataCamps kurskatalog. URL:en till den förkortade versionen lagras i variabeln url_short. Din uppgift är att skapa listan med extraherade författarnamn i spindelns parse-metod.
Det är bra att ha koll på två saker:
- Du använder
response-objektet och metodencsshär. - Kursens författarnamn definieras av texten i
p-elementen som tillhör klassencourse-block__author-name
Du kan undersöka spindeln med hjälp av funktionen inspect_spider() som vi har byggt åt dig – den skriver ut de författarnamn du hittar!
Observera att den här och de återstående övningarna i det här kapitlet kan ta lite tid att läsa in.
Den här övningen är en del av kursen
Webbskrapning i Python
Övningsinstruktioner
- Fyll i de argument som krävs för parse-metoden så att den fungerar korrekt när den anropas i metoden
start_requests. - Inuti
parse-metoden, skapa en variabelauthor_names, som är en lista med strängar skapad genom att extrahera texten från de styckelement som tillhör klassencourse-block__author-name.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Import the scrapy library
import scrapy
# Create the Spider class
class DCspider( scrapy.Spider ):
name = 'dcspider'
# start_requests method
def start_requests( self ):
yield scrapy.Request( url = url_short, callback = self.parse )
# parse method
def parse( ____ ):
# Create an extracted list of course author names
____
# Here we will just return the list of Authors
return author_names
# Inspect the spider
inspect_spider( DCspider )