Antwoorden met Selectors
Iets wat we op dit punt willen benadrukken over de relatie tussen Selector- en Response-objecten is dat beide objecten een SelectorList teruggeven wanneer je de methoden xpath of css gebruikt om naar elementen te verwijzen. In deze oefening bewijzen we dat door je alle hyperlinkelementen te laten vinden die tot de class course-block__link behoren (let op de dubbele underscore!) en te kijken naar het object dat daarbij wordt geproduceerd.
Onthoud dat je om een element op class te vinden een punt (.) kunt gebruiken. Bijvoorbeeld, div.class-2 selecteert alle div-elementen die tot class-2 behoren.
We hebben zowel een Response-object met de naam response als een Selector-object met de naam sel vooraf geladen met de inhoud van dezelfde "geheime" website. Zodra je de taak hebt voltooid om een CSS Locator te maken, vergelijk je de output van response.css en selector.css om te zien dat ze in feite hetzelfde zijn!
Deze oefening maakt deel uit van de cursus
Webscraping in Python
Oefeninstructies
- Ken aan de variabele
css_locatoreen CSS Locator-string toe die verwijst naar alle hyperlink-a-elementen die tot de classcourse-block__linkbehoren. - Ken aan de variabele
response_asde output toe van het doorgeven van de variabelecss_locatoraan de methodecssinresponse. - Ken aan de variabele
sel_asde output toe van het doorgeven van de variabelecss_locatoraan de methodecssinsel.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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( "" )