Rispondere con i Selector
A questo punto è importante sottolineare che la relazione tra un oggetto Selector e un oggetto Response è che entrambi restituiscono un SelectorList quando usi i metodi xpath o css per puntare agli elementi. In questo esercizio te lo dimostreremo, facendoti trovare tutti gli elementi hyperlink che appartengono alla classe course-block__link (nota il doppio underscore!) e osservando l’oggetto prodotto.
Ricorda che per trovare un elemento per classe puoi usare un punto (.). Per esempio, div.class-2 seleziona tutti gli elementi div appartenenti a class-2.
Abbiamo già caricato un oggetto Response chiamato response e un oggetto Selector chiamato sel con i contenuti dello stesso sito web "segreto". Una volta completato il compito di creare un CSS Locator, confronterai l’output di response.css e selector.css per vedere che sono di fatto identici!
Questo esercizio fa parte del corso
Web Scraping in Python
Istruzioni dell'esercizio
- Assegna alla variabile
css_locatoruna stringa CSS Locator che punti a tutti gli elementi hyperlinkaappartenenti alla classecourse-block__link. - Assegna alla variabile
response_asl’output del passaggio della variabilecss_locatoral metodocssinresponse. - Assegna alla variabile
sel_asl’output del passaggio della variabilecss_locatoral metodocssinsel.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Create a CSS Locator string to the desired hyperlink elements
css_locator = ____
# Select the hyperlink elements from response and sel
response_as = ____
sel_as = ____
# Examine similarity
nr = len( response_as )
ns = len( sel_as )
for i in range( min(nr, ns, 2) ):
print( "Element %d from response: %s" % (i+1, response_as[i]) )
print( "Element %d from sel: %s" % (i+1, sel_as[i]) )
print( "" )