Répondre avec des sélecteurs
Il convient de souligner à ce stade que les objets Selector
et Response
renvoient tous deux un SelectorList
lorsqu'ils utilisent les méthodes xpath
ou css
pour diriger vers des éléments. Dans cet exercice, nous allons vous le prouver en vous demandant de trouver tous les éléments de lien hypertexte appartenant à la classe course-block__link
(remarquez le double trait de soulignement !) et de regarder l'objet qui est produit à cette occasion.
Rappelez-vous que pour trouver un élément par classe, vous pouvez utiliser un point (.
). Par exemple, div.class-2
sélectionne tous les éléments div appartenant à class-2
.
Nous avons préchargé un objet Response
nommé response
et un objet Selector
nommé sel
avec le contenu du même site web "secret". Une fois que vous aurez créé un localisateur CSS, vous comparerez les résultats de response.css
et de selector.css
pour constater qu'ils sont effectivement identiques !
Cet exercice fait partie du cours
Web Scraping en Python
Instructions
- Attribuez à la variable
css_locator
une chaîne de localisation CSS qui renvoie à tous les éléments de l'hyperliena
appartenant à la classecourse-block__link
. - Attribuez à la variable
response_as
le résultat du passage de la variablecss_locator
à la méthodecss
dansresponse
. - Attribuez à la variable
sel_as
le résultat du passage de la variablecss_locator
à la méthodecss
danssel
.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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( "" )