Odpověď pomocí selektorů
Na tomto místě stojí za to zdůraznit jeden důležitý vztah mezi objekty Selector a Response: oba vracejí při použití metod xpath nebo css objekt typu SelectorList. V tomto cvičení si to ověříš sám – najdeš všechny hyperlinkové elementy patřící do třídy course-block__link (všimni si dvojitého podtržítka!) a podíváš se, jaký objekt při tom vznikne.
Připomeň si, že pro výběr elementu podle třídy se používá tečka (.). Například div.class-2 vybere všechny elementy div patřící do třídy class-2.
V prostředí jsou předem načteny jak objekt Response s názvem response, tak objekt Selector s názvem sel, oba se stejným obsahem z téže „tajné" webové stránky. Jakmile CSS lokátor vytvoříš, porovnáš výstup response.css a selector.css a přesvědčíš se, že jsou prakticky totožné!
Toto cvičení je součástí kurzu
Web Scraping v Pythonu
Pokyny k cvičení
- Do proměnné
css_locatorpřiřaď řetězec CSS lokátoru, který směřuje na všechny hyperlinkové elementyapatřící do třídycourse-block__link. - Do proměnné
response_aspřiřaď výstup volání metodycssna objekturesponses argumentemcss_locator. - Do proměnné
sel_aspřiřaď výstup volání metodycssna objektusels argumentemcss_locator.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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( "" )