Nawigacja po DOM za pomocą selektorów CSS
Używaj selektorów CSS z BeautifulSoup, aby precyzyjnie wybierać elementy podczas parsowania HTML, wykraczając poza podstawowe wyszukiwanie po nazwach tagów.
Nawigacja po DOM za pomocą selektorów CSS to bezpłatna lekcja Web Scraping & Bots na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Web Scraping & Bots, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Web Scraping & Bots zawiera 4 lekcji w sumie.
Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.
Why CSS Selectors?
You can find tags by name with BeautifulSoup, but real pages need precision. CSS selectors let you target elements exactly like a stylesheet would.
select vs find
BeautifulSoup offers select() (returns a list) and select_one() (returns the first match) that accept CSS selector strings.
from bs4 import BeautifulSoup
soup = BeautifulSoup(html, 'html.parser')
items = soup.select('li')
first = soup.select_one('h1')Selecting by Class
Prefix a class name with a dot.
prices = soup.select('.price')
for p in prices:
print(p.get_text())Selecting by ID
Prefix an id with a hash. IDs are unique, so pair with select_one.
header = soup.select_one('#main-header')
print(header.get_text())Descendant Selectors
A space means descendant: match elements nested anywhere inside another.
titles = soup.select('div.product h2')
for t in titles:
print(t.get_text(strip=True))Direct Child Selectors
A > matches only direct children, not deeper descendants.
rows = soup.select('table > tbody > tr')
print(len(rows))Attribute Selectors
Target elements by attribute values inside square brackets.
links = soup.select('a[href^="https"]')
images = soup.select('img[alt]')Combining Selectors
Chain conditions for tight targeting — tag, class and attribute together.
buttons = soup.select('button.cta[data-action="buy"]')Extracting Attributes
Once selected, read attributes like href or src with bracket access.
for a in soup.select('a.product-link'):
print(a['href'])nth-of-type
Pseudo-classes like :nth-of-type pick elements by position.
second = soup.select('ul li:nth-of-type(2)')
print(second[0].get_text())A Full Mini Example
Combine everything to scrape a list of product names and prices.
for card in soup.select('div.card'):
name = card.select_one('.title').get_text(strip=True)
price = card.select_one('.price').get_text(strip=True)
print(name, price)Quick Check
Which CSS selector matches an element whose class is exactly price?
Recap
You learned CSS selectors in BeautifulSoup:
- select / select_one
- Class (.), id (#), descendant and child (>) selectors
- Attribute selectors and pseudo-classes
- Extracting attributes
CSS selectors let you target exactly the data you need on complex pages.
Często zadawane pytania
Czy lekcja „Nawigacja po DOM za pomocą selektorów CSS” jest bezpłatna?
Tak — pełny tekst „Nawigacja po DOM za pomocą selektorów CSS” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Web Scraping & Bots, przejdź na CoddyKit PRO. Kurs Web Scraping & Bots zawiera 4 lekcji w sumie.
Co nauczysz się w „Nawigacja po DOM za pomocą selektorów CSS”?
Używaj selektorów CSS z BeautifulSoup, aby precyzyjnie wybierać elementy podczas parsowania HTML, wykraczając poza podstawowe wyszukiwanie po nazwach tagów. Ćwiczysz Web Scraping & Bots z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Web Scraping & Bots?
Nie wymagamy żadnego doświadczenia. Web Scraping & Bots w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Nawigacja po DOM za pomocą selektorów CSS”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Web Scraping & Bots?
Tak. Każda lekcja Web Scraping & Bots zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Konfiguracja środowiska
- Korzystanie z Requests do obsługi adresów URL
- Ekstrakcja danych za pomocą BeautifulSoup
- Nawigacja po DOM za pomocą selektorów CSS