Respuesta con selectores
Algo que debemos destacar en este punto sobre la relación entre los objetos Selector
y Response
es que ambos objetos devuelven un SelectorList
cuando se utilizan los métodos xpath
o css
para dirigir a los elementos. En este ejercicio te lo demostraremos, haciéndote encontrar todos los elementos de hipervínculo pertenecientes a la clase course-block__link
(¡fíjate en el doble guión bajo!) y observando el objeto que se produce al hacerlo.
Recuerda que para buscar un elemento por clase, puedes utilizar un punto (.
). Por ejemplo, div.class-2
selecciona todos los elementos div pertenecientes a class-2
.
Hemos precargado un objeto Response
llamado response
y un objeto Selector
llamado sel
con el contenido del mismo sitio web "secreto". Una vez que completes la tarea de crear un localizador CSS, compararás los resultados de response.css
y selector.css
para ver que, efectivamente, ¡son iguales!
Este ejercicio forma parte del curso
Web scraping en Python
Instrucciones de ejercicio
- Asigna a la variable
css_locator
una cadena de localización CSS que dirija a todos los elementos de hipervínculoa
pertenecientes a la clasecourse-block__link
. - Asigna a la variable
response_as
el resultado de pasar la variablecss_locator
al métodocss
enresponse
. - Asigna a la variable
sel_as
el resultado de pasar la variablecss_locator
al métodocss
ensel
.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# 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( "" )