IniziaInizia gratis

Sei stato `href`-izzato

In un esercizio precedente, hai creato una stringa di CSS Locator per selezionare i figli collegamento ipertestuale (elementi a) di tutti gli elementi div appartenenti alla classe "course-block". Qui abbiamo creato una SelectorList chiamata course_as selezionando proprio quei figli collegamento.

Ora vogliamo che tu compili lo spazio vuoto qui sotto per estrarre i valori dell’attributo href da questi elementi. È un altro esempio di concatenazione, come abbiamo visto in un esercizio precedente.

L’idea è che possiamo concatenare le chiamate ai metodi css e xpath, e anche combinarle! Ti diamo una spinta nella direzione giusta fornendoti la soluzione nel caso in cui concateni con un’altra chiamata al metodo css.

Questo esercizio fa parte del corso

Web Scraping in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Crea l’oggetto Selector sel usando la stringa html come input di testo.
  • Assegna alla variabile hrefs_from_xpath i valori dell’attributo href dagli elementi in course_as. La tua soluzione deve coincidere con hrefs_from_css!

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

from scrapy import Selector

# Create a selector object from a secret website
sel = Selector( ____ )

# Select all hyperlinks of div elements belonging to class "course-block"
course_as = sel.css( 'div.course-block > a' )

# Selecting all href attributes chaining with css
hrefs_from_css = course_as.css( '::attr(href)' )

# Selecting all href attributes chaining with xpath
hrefs_from_xpath = course_as.xpath( ____ )
Modifica ed esegui il codice