🚀 We are hiring! See open positions

How to use CSS Selectors in Python?

by scrapecrow Oct 31, 2022

Python has several popular packages that can parse HTML using CSS selectors.
The most popular one is BeautifulSoup which can execute CSS selectors through the select() and select_one() methods:

from bs4 import BeautifulSoup

soup = BeautifulSoup("""
<a>link 1</a>
<a>link 2</a>
""")

print(soup.select_one('a'))
"<a>link 1</a>"
print(soup.select('a'))
["<a>link 1</a>", "<a>link 2</a>"]

Another popular package is parsel (also used by scrapy) which can execute CSS selectors through the css() method:

from parsel import Selector

soup = Selector("""
<a>link 1</a>
<a>link 2</a>
""")

print(soup.css('a').get())
"<a>link 1</a>"
print(soup.css('a').getall())
["<a>link 1</a>", "<a>link 2</a>"]

Related Articles

How to Parse XML

In this article, we'll explain about XML parsing. We'll start by defining XML files, their format and how to navigate them for data extraction.

PYTHON
CSS-SELECTORS
XPATH
DATA-PARSING
How to Parse XML

Crawl4AI Explained: The AI-Friendly Web Crawling Framework

Discover Crawl4AI, the AI-friendly web crawling framework. Learn features, installation, and intelligent web scraping for LLMs.

WEB-SCRAPING
AI
PYTHON
CRAWLING
Crawl4AI Explained: The AI-Friendly Web Crawling Framework

Social Media Scraping in 2025

Complete guide to scraping Instagram, Twitter, TikTok, and LinkedIn with Python. Learn anti-blocking techniques for 2025.

SCRAPEGUIDE
PYTHON
SOCIAL-MEDIA
Social Media Scraping in 2025

How to Scrape Naver.com

Master web scraping techniques for Naver.com, South Korea's dominant search engine.

SCRAPEGUIDE
PYTHON
BEAUTIFULSOUP
REQUESTS
How to Scrape Naver.com

How to Scrape Imovelweb.com

Scrape Imovelweb with Python - extract listings and details, handle pagination and JSON-LD, and use Scrapfly for anti-bot reliability.

PYTHON
SCRAPEGUIDE
BEAUTIFULSOUP
REQUESTS
SCRAPFLY
How to Scrape Imovelweb.com

How to Scrape AutoScout24

Learn how to scrape AutoScout24 for car listings, prices, specifications, and detailed vehicle information using Python. Complete guide with code examples and anti-blocking techniques.

PYTHON
SCRAPEGUIDE
BEAUTIFULSOUP
REQUESTS
How to Scrape AutoScout24