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_locatorune chaîne de localisation CSS qui renvoie à tous les éléments de l'hyperlienaappartenant à la classecourse-block__link. - Attribuez à la variable
response_asle résultat du passage de la variablecss_locatorà la méthodecssdansresponse. - Attribuez à la variable
sel_asle résultat du passage de la variablecss_locatorà la méthodecssdanssel.
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( "" )