Beautiful Soup: web scraping cơ bản trong Python

Web scraping là kỹ thuật trích xuất dữ liệu từ trang web. Kết hợp requests và Beautiful Soup, bạn có thể thu thập thông tin tự động. Bài viết giới thiệu cách làm cơ bản và có trách nhiệm.

Cài đặt

pip install requests beautifulsoup4

Lấy và phân tích HTML

import requests
from bs4 import BeautifulSoup

html = requests.get("https://example.com").text
soup = BeautifulSoup(html, "html.parser")

Tìm phần tử

soup.title.text              # tiêu đề trang
soup.find("h1").text         # thẻ h1 đầu tiên
soup.find_all("a")           # tất cả liên kết
soup.find("div", class_="content")   # theo class

Trích xuất dữ liệu

for bai in soup.find_all("article"):
    tieu_de = bai.find("h2").text
    link = bai.find("a")["href"]
    print(tieu_de, link)

Dùng CSS selector

soup.select("div.post h2")   # linh hoạt như CSS
soup.select_one("#main")

Scraping có trách nhiệm

  • Tôn trọng robots.txt của website.
  • Đọc điều khoản sử dụng — không phải trang nào cũng cho phép.
  • Giới hạn tốc độ (thêm time.sleep) để không gây tải cho server.
  • Không thu thập dữ liệu cá nhân trái phép.

Web scraping là công cụ mạnh cho nghiên cứu và tổng hợp dữ liệu công khai — hãy dùng nó một cách hợp pháp và lịch sự.

Lên đầu trang