Vous avez été `href`ed
Dans un exercice précédent, vous avez créé une chaîne de localisation CSS pour sélectionner les enfants de l'hyperlien (élémenta
) de tous les éléments div
appartenant à la classe "course-block"
. Nous avons créé un site SelectorList
appelé course_as
après avoir sélectionné les enfants de l'hyperlien.
Maintenant, nous voulons que vous remplissiez les champs ci-dessous pour extraire les valeurs de l'attribut href
de ces éléments. Il s'agit d'un autre exemple de chaînage, comme nous l'avons vu dans un exercice précédent.
L'intérêt est que nous pouvons enchaîner les appels aux méthodes css
et xpath
, et les combiner ! Nous vous aidons à vous orienter dans la bonne direction en vous donnant la solution si nous enchaînons avec un autre appel à la méthode css
.
Cet exercice fait partie du cours
Web Scraping en Python
Instructions
- Configurez l'objet
Selector
sel
en utilisant la chaînehtml
comme texte d'entrée. - Attribuez à la variable
hrefs_from_xpath
les valeurs d'attributs dehref
provenant des éléments decourse_as
. Votre solution doit correspondre àhrefs_from_css
!
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
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( ____ )