Web ngày càng phức tạp theo từng năm, và khoảng cách giữa “tôi cần dữ liệu này” với “tôi biết cách lấy nó” vẫn cứ khó mà thu hẹp. Với người mới, câu hỏi đầu tiên thường rất đơn giản: Có nhất thiết phải học Python chỉ để lấy giá sản phẩm từ một website không?
May mắn là câu trả lời là không. Nhưng câu hỏi kế tiếp — rốt cuộc mình nên dùng công cụ nào? — mới là lúc rắc rối bắt đầu. Hiện nay có đủ kiểu lựa chọn: app desktop không cần code, tiện ích trình duyệt, framework Python, thư viện Go, spider SEO, API được quản lý và các dự án mã nguồn mở khiến ranh giới giữa những nhóm này ngày càng mờ. Mười lựa chọn nổi bật trong năm 2026 dưới đây được chọn lọc theo đúng những tiêu chí mà người mới thật sự quan tâm: cần viết bao nhiêu code, dữ liệu lấy ra có dùng lâu được không, công cụ có xử lý được website nặng JavaScript hay không, bản miễn phí cho gì, và nó hợp nhất với trường hợp nào. Dù bạn chưa từng viết một dòng code hay là lập trình viên mới vào nghề đang tìm framework crawler đầu tiên, ở đây đều có điểm khởi đầu phù hợp.
Cách Chúng Tôi Chọn Web Crawler Tốt Nhất Cho Người Mới
“Người mới” không có nghĩa là “không rành kỹ thuật”. Nó có nghĩa là bất kỳ ai chưa từng tự xây một quy trình web crawling trước đó — kể cả những người biết viết Python hoặc JavaScript cơ bản nhưng chưa từng xử lý hàng đợi URL hay làm việc với file robots.txt.
Mỗi công cụ được đánh giá theo 6 khía cạnh bám sát những câu hỏi mà người mới thường hỏi trên diễn đàn:
- Cần viết code không — Không cần, Python/JS cơ bản, hay trung cấp trở lên
- Độ khó thiết lập — Từ lúc cài đến lúc lấy được dữ liệu đầu tiên mất bao lâu
- Kết xuất JavaScript — Có xử lý được SPA và các trang tải nội dung động không?
- Độ hào phóng của gói miễn phí — Trước khi phải trả tiền, bạn nhận được gì?
- Định dạng đầu ra — CSV, JSON, Excel, Google Sheets, v.v.
- Trường hợp phù hợp nhất — Kịch bản cụ thể mà công cụ đó thật sự phát huy tác dụng với người mới
Danh sách này trải dài trên 3 cấp độ kỹ năng: không cần code (không lập trình), trung cấp (Python hoặc JavaScript cơ bản) và người mới nâng cao (Go hoặc hiểu sâu hơn về framework). Tôi cố gắng nói thật về cả điểm mạnh lẫn hạn chế của từng công cụ — vì chọn nhầm crawler so với trình độ của mình là cách nhanh nhất để mất cả buổi chiều.
Chọn Web Crawler Đầu Tiên: Sơ Đồ Quyết Định Nhanh

Trước khi lướt qua 10 bài đánh giá công cụ, hãy trả lời 3 câu hỏi sau. Điểm giao nhau sẽ gợi ý 1 hoặc 2 công cụ phù hợp.
Câu 1: Bạn thoải mái với code đến đâu?
- Không biết code → Sang Câu 2a
- Python cơ bản → Sang Câu 2b
- JavaScript/TypeScript → Sang Câu 2c
- Go → Colly
Câu 2a (Không code): Mục tiêu chính của bạn là gì?
- Trích xuất dữ liệu chung (thông tin sản phẩm, danh sách lead, nghiên cứu) → Thunderbit hoặc Octoparse
- Luồng nhiều bước phức tạp (đăng nhập, menu xổ xuống, cuộn vô hạn) → ParseHub hoặc Octoparse
- Kiểm tra SEO → Screaming Frog
Câu 2b (Python): Mục tiêu chính của bạn là gì?
- Pipeline AI/LLM (RAG, huấn luyện chatbot) → Crawl4AI hoặc Firecrawl
- Crawling có cấu trúc quy mô lớn trên các site chủ yếu tĩnh → Scrapy
- Tự động hóa trình duyệt trên site nặng JS → Playwright (nhưng hãy chuẩn bị tự xây logic crawl của riêng bạn)
Câu 2c (JavaScript/TypeScript): Mục tiêu chính của bạn là gì?
- Crawl SPA hiện đại kèm chống chặn → Crawlee
- Tương tác trình duyệt phức tạp (đăng nhập, click, chụp màn hình) → Playwright
- Markdown sạch để đưa vào AI → Firecrawl (qua API/SDK)
Lọc theo ngân sách: Nếu bạn cần phần mềm giá 0 và có thể tự host, các công cụ mã nguồn mở ở đây (Scrapy, Crawlee, Crawl4AI, Playwright và Colly) không áp quota trang do nhà cung cấp đặt ra, dù bạn vẫn phải tự lo chi phí tính toán, băng thông, lưu trữ, bảo trì và các giới hạn từ website mục tiêu. Nếu không thể tự host, Octoparse, ParseHub, Thunderbit, Firecrawl và Screaming Frog đều có lộ trình miễn phí với mức giới hạn khác nhau.
Chỉ riêng sơ đồ này thôi cũng có thể giúp bạn tiết kiệm hàng giờ chuyển qua lại giữa các tab. Nên lưu lại.
Tổng Quan Các Web Crawler Tốt Nhất Cho Người Mới
Dưới đây là bảng so sánh đầy đủ. “Coding Required” cho biết bạn cần ngôn ngữ nào (nếu có). “JS Rendering” cho biết công cụ có xử lý được trang tải nội dung bằng JavaScript hay không. “Free Tier” tóm tắt những gì bạn nhận được khi dùng miễn phí. Phần đánh giá chi tiết sẽ theo ngay bên dưới.
| Công cụ | Trình độ | Cần viết code | Kết xuất JS | Gói miễn phí | Phù hợp nhất |
|---|---|---|---|---|---|
| Octoparse | Người mới | Không | ✅ Tích hợp sẵn | Gói miễn phí: 10 tác vụ, chỉ chạy local, 10K dòng/export | Trích xuất site có cấu trúc bằng cách bấm chọn |
| ParseHub | Người mới | Không | ✅ Tích hợp sẵn | 5 dự án công khai, 200 trang/lần chạy, lưu 14 ngày | Luồng nhiều trang phức tạp không cần code |
| Thunderbit | Người mới | Không | ✅ Qua trình duyệt | Gói miễn phí (xem giới hạn hiện tại) | Trích xuất bằng AI ngay trên trang bạn đang mở |
| Crawl4AI | Trung cấp | Python | ✅ Chromium | Mã nguồn mở (tự host) | Crawl sẵn cho LLM, phù hợp pipeline RAG |
| Firecrawl | Trung cấp | API/SDK | ✅ Được quản lý | 1,000 credit/tháng (cloud) | Đầu ra Markdown sạch cho AI |
| Scrapy | Trung cấp | Python | ⚠️ Cần plugin | Mã nguồn mở (BSD) | Dự án crawl HTTP lớn, tùy biến cao |
| Crawlee | Trung cấp | JS/TS hoặc Python | ✅ Qua Playwright | Mã nguồn mở (Apache) | Crawl JavaScript hiện đại kèm chống chặn |
| Playwright | Trung cấp | Python/JS/Java/.NET | ✅ Native | Mã nguồn mở (Apache) | Tự động hóa trình duyệt + tương tác site nặng JS |
| Screaming Frog | Người mới | Không | ✅ (chỉ bản trả phí) | 500 URL/lần crawl (miễn phí vĩnh viễn) | Audit SEO và phân tích kỹ thuật website |
| Colly | Người mới nâng cao | Go | ⚠️ Không có sẵn | Mã nguồn mở (Apache) | Crawl HTTP nhanh, nhẹ, chạy đồng thời tốt |
Bây giờ là phần phân tích chi tiết.
1. Octoparse

Octoparse là công cụ dựng tác vụ không cần code trên desktop, có tùy chọn chạy cloud trả phí. Bạn chỉ cần dán URL, để Auto-detect nhận diện các trường dữ liệu lặp lại và mẫu điều hướng, xem trước kết quả rồi chạy tác vụ ngay trên máy. Trình chỉnh sửa workflow trực quan hỗ trợ vòng lặp, nhánh rẽ, phân trang, cuộn vô hạn, AJAX, form và dropdown — dù các luồng động đôi khi vẫn cần chỉnh timing thủ công.
Tính năng nổi bật:
- Auto-detect cho trường dữ liệu và điều hướng trang
- Kết xuất JavaScript tích hợp sẵn qua trình duyệt nội bộ
- Hàng trăm template dựng sẵn cho các website phổ biến
- Workflow có thể chỉnh sửa với vòng lặp, nhánh và điều khiển selector tùy biến
- Xuất ra Excel, CSV, HTML, JSON, XML, Google Sheets và database (tùy gói)
Giá: Gói miễn phí giới hạn hỗ trợ chạy local. Chạy cloud, lên lịch, xoay IP và truy cập API cần gói trả phí. Hãy kiểm tra giá hiện tại trước khi quyết định vì giới hạn gói có thể thay đổi.
Phù hợp nhất: Người mới muốn trích xuất có cấu trúc, lặp lại từ các site thương mại điện tử, danh bạ hoặc trang listing mà không cần viết code. Ít phù hợp hơn nếu bạn cần sự tiện lợi kiểu browser extension hoặc định dạng đầu ra thân thiện với LLM.
2. ParseHub

ParseHub là công cụ trích xuất trực quan có thể tải về cho Windows, macOS và Linux (qua AppImage). Giao diện dạng cây lệnh mô hình hóa các thao tác chọn, click, nhập form, cuộn và template trang. Nó hỗ trợ AJAX/JavaScript, dropdown, tab, pop-up, phân trang, form đăng nhập và cuộn vô hạn.
Tính năng nổi bật:
- Cây lệnh trực quan cho luồng trích xuất nhiều bước
- Xử lý AJAX, JavaScript, dropdown, tab và cuộn vô hạn
- Ứng dụng desktop đa nền tảng (Windows, macOS, Linux)
- Có API để lấy dữ liệu theo chương trình
- Xuất CSV và JSON
Giá: Có gói miễn phí và gói trả phí. Một “trang” tính phí có thể là URL hoặc một lần tải nội dung động kích hoạt bởi click/cuộn, nên số trang được phép không phải lúc nào cũng tương ứng 1:1 với số URL. Hãy kiểm tra kỹ giới hạn dự án, số lần chạy và thời gian lưu dữ liệu trước khi chọn gói.
Lưu ý về quyền riêng tư: Đừng nhập thông tin đăng nhập thật vào một crawler bên thứ ba cho đến khi bạn đã xem cách công cụ lưu trữ input đăng nhập và dữ liệu dự án. Khi đánh giá, hãy dùng một tài khoản test có giới hạn.
Phù hợp nhất: Người mới cần scrape các website động, nhiều bước (site có điều hướng phức tạp, dropdown hoặc tải dữ liệu bằng cuộn) mà không phải viết code.
ParseHub so với Octoparse: Khác Nhau Ở Điểm Nào
Cả hai đều là công cụ desktop không cần code và hỗ trợ JavaScript. Mô hình cây lệnh của ParseHub cho bạn kiểm soát rõ hơn với các luồng nhiều bước — hữu ích cho điều hướng phức tạp, nhưng sẽ khó tiếp cận hơn với tác vụ đơn giản. Auto-detect của Octoparse nhanh hơn cho các site có cấu trúc rõ ràng và thường có giới hạn xuất dữ liệu hào phóng hơn ở gói miễn phí. Nếu trang mục tiêu chủ yếu là bảng và danh sách, hãy bắt đầu với Octoparse. Nếu bạn cần mô hình hóa chuỗi click, điền form và điều hướng theo điều kiện, ParseHub có thể dễ hiểu hơn.
3. Thunderbit

Thunderbit là tiện ích mở rộng browser AI web scraping cho Chrome và Edge, được xây dựng cho người dùng doanh nghiệp không rành kỹ thuật nhưng muốn trích xuất dữ liệu ngay trên trang mình đang xem. (Công khai một chút: tôi làm việc tại Thunderbit, nên tôi sẽ nói thẳng cả điểm mạnh lẫn hạn chế.)
Tính năng nổi bật:
- AI Suggest Fields tự nhận diện cột dựa trên nội dung trang
- Prompt AI ở cấp trường dữ liệu để phân loại, dịch, định dạng và chuẩn hóa khi trích xuất
- Xuất sang Excel/CSV, Google Sheets, Airtable và Notion
- Browser Mode dùng phiên làm việc đã render của người dùng, xử lý nội dung tải bằng JavaScript trên các trang tương thích
- Không cần cài thêm phần mềm ngoài browser extension
Giá: Gói miễn phí hiện có 6 trang/tháng với tối đa 30 credit mỗi trang. Gói Starter (15 USD/tháng hoặc 9 USD/tháng nếu thanh toán theo năm) mở khóa phân trang, scrape trang con, scrape hàng loạt, enrichment, scraper dựng sẵn và lịch chạy. Xem giá hiện tại tại đây.
Điểm cần biết: Thunderbit thiên về theo từng trang/từng schema, không phải spider dò toàn bộ domain. Phân trang và scrape trang con là tính năng của gói Starter, không có ở gói Free. Các trường do AI đề xuất vẫn nên được rà soát trước khi chạy — gợi ý thường tốt, nhưng không phải lúc nào cũng đúng tuyệt đối.
Phù hợp nhất: Đội sales, vận hành và nghiên cứu cần dữ liệu có cấu trúc từ trang đang mở trong trình duyệt, kèm hỗ trợ AI để khỏi phải cấu hình trường dữ liệu thủ công. Nếu bạn muốn cách nhanh nhất để lấy một bảng, danh sách hoặc bộ bản ghi từ một trang tương thích rồi xuất ra bảng tính, đây là lối đi nhanh nhất tôi biết.
Để xem cách trích xuất bằng AI hoạt động trong thực tế, hãy xem hướng dẫn về AI web scraping.
4. Crawl4AI

Crawl4AI là crawler Python mã nguồn mở, ưu tiên trình duyệt và được thiết kế để tạo đầu ra sạch cho workflow LLM. Nó xuất HTML thô và sạch, nhiều biến thể Markdown, nội dung trích xuất có cấu trúc, link, media, bảng, ảnh chụp màn hình, PDF và MHTML.
Tính năng nổi bật:
- AsyncWebCrawler dựa trên Chromium/Playwright phía sau
- Nhiều định dạng đầu ra tối ưu cho pipeline RAG và workflow tác tử
- Crawling thích ứng, đánh giá độ phủ, tính nhất quán và mức bão hòa để ưu tiên link liên quan và dừng khi đã thu thập đủ thông tin
- Tùy chọn trích xuất bằng LLM thông qua nhà cung cấp cục bộ (Ollama) hoặc API cloud
- Giấy phép Apache-2.0 kèm yêu cầu ghi nhận tác giả bổ sung
Giá: Hoàn toàn mã nguồn mở — không tính phí theo trang. Bạn tự host hạ tầng và tự trả cho phần suy luận LLM nếu dùng (cục bộ hoặc cloud).
Hạn chế: Cần hiểu Python async và các phụ thuộc của trình duyệt. Chất lượng trích xuất phụ thuộc vào LLM bạn dùng (nếu có). Bộ crawler thích ứng ưu tiên các link liên quan dựa trên tín hiệu đủ thông tin — nó không tự học lâu dài hay tự sửa selector CSS.
Phù hợp nhất: Người dùng Python trình độ trung cấp đang xây pipeline dữ liệu AI và muốn kiểm soát hoàn toàn, không bị tính phí theo request.
5. Firecrawl

Firecrawl là API dữ liệu web được quản lý (có SDK cho Python và Node.js) cùng một codebase tự host theo giấy phép AGPL. Dịch vụ cloud của nó xử lý kết xuất JavaScript và trả về Markdown, tóm tắt, HTML, link, ảnh, ảnh chụp màn hình, JSON và theo dõi thay đổi.
Tính năng nổi bật:
- Endpoint
/crawlvới lọc đường dẫn, độ sâu khám phá, sitemap, giới hạn, độ trễ và kiểm soát concurrency - Tự động render JavaScript trên cloud được quản lý
- Nhiều định dạng đầu ra, bao gồm Markdown sạch
- Endpoint
/mapđể khám phá cấu trúc website nhanh - Browser/Interact và các đường dẫn tác tử beta cho tương tác nhiều bước (tách biệt với crawl cơ bản)
Giá: Cloud Free là 1,000 credit/tháng với 2 request đồng thời và giới hạn tốc độ thấp. Các gói trả phí tính theo credit/concurrency — hãy xem trang giá để biết con số mới nhất. Tự host sẽ chuyển gánh nặng hạ tầng và bảo trì sang bạn và không bao gồm toàn bộ tính năng cloud được quản lý.
Hạn chế: /crawl cơ bản chỉ khám phá đệ quy URL qua link và sitemap, nhưng không đảm bảo xử lý được mọi kiểu phân trang bằng click. Chi phí credit thay đổi theo loại thao tác. Bộ tính năng giữa bản tự host và cloud không giống nhau.
Phù hợp nhất: Người dùng trung cấp cần đưa nội dung website vào LLM, chatbot hoặc knowledge base và muốn một dịch vụ được quản lý thay vì tự vận hành cả stack trình duyệt.
Firecrawl so với Crawl4AI: Nên Chọn Cái Nào Cho AI Pipeline?
Firecrawl mạnh ở việc chuyển sang Markdown được quản lý với API gọn gàng — bạn gửi URL, bạn nhận đầu ra có cấu trúc. Crawl4AI mạnh ở mô hình local-first, nơi bạn kiểm soát trình duyệt và LLM tùy chọn. Nếu bạn muốn giảm tối đa việc quản lý hạ tầng, cloud của Firecrawl là con đường dễ hơn. Nếu bạn muốn tự host hoàn toàn, không bị tính phí theo trang và quen với Python async, Crawl4AI cho bạn nhiều quyền kiểm soát hơn.
6. Scrapy

Scrapy là framework crawling và scraping Python lâu đời, dùng giấy phép BSD, được xây trên engine async Twisted. Nó cung cấp lập lịch request, theo link, khử trùng lặp, middleware, retry, throttling, pipeline và xuất feed sang JSON, JSON Lines, CSV, XML, pickle và marshal.
Tính năng nổi bật:
- Xử lý request bất đồng bộ phù hợp cho các lượt crawl lớn nhưng có phạm vi chặt
- Hệ sinh thái middleware phong phú (proxy, retry, throttling, header tùy biến)
- Kiến trúc pipeline có cấu trúc để làm sạch và lưu trữ dữ liệu
- Cộng đồng, tài liệu và extension bên thứ ba rất lớn
- Hoàn toàn mã nguồn mở (giấy phép BSD)
Hạn chế: Không có kết xuất JavaScript gốc. Hướng dẫn cho nội dung động khuyên nên tìm nguồn dữ liệu phía sau nếu có thể, hoặc tích hợp thành phần browser/rendering có chủ đích (ví dụ scrapy-playwright). Kiến trúc — spider, middleware, item pipeline, settings — có đường cong học khá rõ.
Giá: Miễn phí. Bạn tự host.
Phù hợp nhất: Người dùng Python trình độ trung cấp cần crawl website lớn, chủ yếu tĩnh hoặc render từ server, ở quy mô lớn.
Bắt Đầu Với Scrapy: Hướng Dẫn Nhanh Có Chú Thích
Đây là lộ trình tối thiểu từ cài đặt đến dữ liệu đầu tiên:
pip install scrapy
scrapy startproject beginner_crawl
cd beginner_crawl
scrapy genspider example example.com
Mở beginner_crawl/spiders/example.py và chỉnh sửa:
import scrapy
class ExampleSpider(scrapy.Spider):
name = "example"
allowed_domains = ["example.com"] # Chỉ ở trong domain này
start_urls = ["https://example.com"] # URL khởi đầu
custom_settings = {
"ROBOTSTXT_OBEY": True, # Tôn trọng robots.txt
"DOWNLOAD_DELAY": 2, # Chờ 2 giây giữa các request
"CLOSESPIDER_PAGECOUNT": 10, # Dừng sau 10 trang (giới hạn an toàn)
"USER_AGENT": "Beginner-Crawl-Bot (+https://yoursite.com/bot-info)",
}
def parse(self, response):
yield {
"title": response.css("title::text").get(),
"url": response.url,
}
# Theo các link trên trang (nằm trong allowed_domains)
for link in response.css("a::attr(href)").getall():
yield response.follow(link, callback=self.parse)
Chạy:
scrapy crawl example -o output.json
Hãy thử selector trước bằng scrapy shell "https://example.com" trước khi mở rộng quy mô. Thời gian thiết lập phụ thuộc vào kinh nghiệm Python của bạn — đừng kỳ vọng xong trong mười phút nếu bạn còn mới với virtual environment và lệnh terminal.
7. Crawlee

Crawlee là thư viện crawler dùng giấy phép Apache cho JavaScript/TypeScript và Python, được Apify duy trì. Nó cung cấp cả lớp chỉ dùng HTTP (như CheerioCrawler) lẫn browser crawler dùng Playwright/Puppeteer, cùng request queue, dataset, quản lý session, retry và các giới hạn an toàn.
Tính năng nổi bật:
- Chọn theo từng dự án giữa HTTP-first (CheerioCrawler) hoặc trình duyệt đầy đủ (PlaywrightCrawler)
- Request queue, khử trùng lặp và lưu trữ dataset tích hợp sẵn
- Quản lý session, fingerprint trình duyệt, retry và kiểm soát boundary request
- Ưu tiên TypeScript nhưng hỗ trợ Python ổn định
- Hướng dẫn nhanh chính thức khuyên nên dùng HTTP-first khi HTML đã chứa sẵn dữ liệu
Giá: Miễn phí. Mã nguồn mở, tự host.
Hạn chế: Cần biết JavaScript/TypeScript hoặc Python. Tài liệu cộng đồng ít hơn Scrapy. Tính năng chống chặn không tạo ra quyền truy cập và cũng không đảm bảo truy cập — nó chỉ giảm nguy cơ bị phát hiện, chứ không biến crawling trái phép thành hợp lệ.
Phù hợp nhất: Lập trình viên JavaScript trình độ trung cấp cần crawl SPA hiện đại và site render bằng JS, có sẵn quản lý hàng đợi và chống chặn.
Crawlee Quickstart: Từ Cài Đặt Đến Dữ Liệu Đầu Tiên
npx crawlee create my-crawler
cd my-crawler
Chọn template Playwright khi màn hình thiết lập xuất hiện.
Sửa handler trong src/routes.ts để trích xuất dữ liệu bạn cần, rồi:
npm start
Kết quả sẽ nằm ở thư mục dataset cục bộ dưới dạng JSON. Hãy thêm maxRequestsPerCrawl, giới hạn độ sâu, quy tắc cùng domain và mức concurrency hợp lý trước khi mở rộng ngoài bài test.
8. Playwright

Playwright là framework tự động hóa trình duyệt của Microsoft, dùng giấy phép Apache và hỗ trợ Python, Node.js, Java và .NET. Nó điều khiển trình duyệt Chromium, Firefox và WebKit thật — rất hợp cho các trang tải nội dung bằng JavaScript, cần luồng đăng nhập hoặc có tương tác phức tạp.
Tính năng nổi bật:
- Render bằng trình duyệt thật gốc trên ba engine
- Xử lý SPA, luồng đăng nhập, click, điền form, tải file, chụp màn hình và PDF
- Hỗ trợ đa ngôn ngữ (Python, JS/TS, Java, .NET)
- Tài liệu rất tốt và vẫn được phát triển tích cực
- Chặn request và giả lập request
Playwright không phải là gì: Không phải crawler hoàn chỉnh. Nó không cung cấp sẵn frontier URL, hàng đợi khử trùng lặp, chính sách lịch sự khi crawl, mô hình retry hay trình xuất feed dữ liệu. Bạn phải tự xây những phần đó — hoặc kết hợp Playwright với framework như Crawlee để có sẵn chúng.
Giá: Miễn phí. Mã nguồn mở.
Phù hợp nhất: Lập trình viên trình độ trung cấp cần tự động hóa tương tác trình duyệt trên site nặng JS hoặc có bảo vệ đăng nhập và sẵn sàng tự xây logic crawl xung quanh nó.
9. Screaming Frog

Screaming Frog SEO Spider là công cụ crawl technical SEO dạng desktop cho Windows, macOS và Linux. Đây không phải công cụ trích xuất dữ liệu tổng quát — nó là crawler quen thuộc nhất để audit SEO, phát hiện link hỏng, chuỗi redirect, nội dung trùng lặp, metadata thiếu và hàng trăm vấn đề technical SEO khác.
Tính năng nổi bật:
- Crawl tối đa 500 URL miễn phí (vĩnh viễn, không phải bản dùng thử)
- Phát hiện link hỏng, chuỗi redirect, nội dung trùng lặp, metadata thiếu
- Các tab chi tiết cho title, meta description, heading, ảnh và nhiều mục khác
- Bản trả phí thêm kết xuất JavaScript, lưu crawl, trích xuất tùy biến, tích hợp GA/GSC và tích hợp AI (OpenAI, Gemini, Anthropic, Ollama)
Giá: Bản miễn phí vĩnh viễn ở mức 500 URL/lần crawl nhưng không có kết xuất JavaScript, cấu hình nâng cao, trích xuất tùy biến và tích hợp. Bản quyền là £199 / $279 / €245 mỗi user mỗi năm.
Hạn chế: Đường cong học tập khá dốc với người không làm SEO. Tốn tài nguyên máy local (với site lớn sẽ bị giới hạn bởi RAM). Không có gói theo tháng. Không được thiết kế cho trích xuất dữ liệu tổng quát — đây là công cụ audit.
Phù hợp nhất: Người mới tập trung vào audit SEO và phân tích kỹ thuật website. Nếu bạn cần lấy dữ liệu sản phẩm hoặc xây danh sách lead, hãy tìm công cụ khác.
10. Colly

Colly là framework Go để crawl/scrape HTTP, dùng giấy phép Apache, có API dựa trên callback, kiểm soát concurrency, session/cookie, hàng đợi, cache và backend lưu trữ có thể thay thế.
Tính năng nổi bật:
- Crawl HTTP đồng thời nhanh, dùng ít tài nguyên
- API gọn, dựa trên callback
- Xử lý cookie/session và cache tích hợp sẵn
- Giới hạn tốc độ theo domain thông qua LimitRule
- Cài đặt hiện tại:
go get github.com/gocolly/colly/v2
Lưu ý quan trọng cho người mới: Mã nguồn hiện tại của Colly khởi tạo IgnoreRobotsTxt = true theo mặc định. Bạn phải tự đặt giá trị này thành false và cấu hình LimitRule với độ trễ và mức parallelism phù hợp. Nếu không làm vậy, Colly sẽ bỏ qua robots.txt và rất dễ làm quá tải server mục tiêu.
Giá: Miễn phí. Mã nguồn mở.
Hạn chế: Cần biết lập trình Go. Không có trình render JavaScript tích hợp sẵn hay trình xuất feed phổ quát — bạn phải tự serialize đầu ra. Cộng đồng nhỏ hơn so với các công cụ dựa trên Python.
Phù hợp nhất: Người mới nâng cao biết Go và cần một crawler HTTP nhanh, nhẹ cho site tĩnh hoặc API — miễn là họ cấu hình robots và rate limit một cách rõ ràng.
So Sánh Gói Miễn Phí: Bạn Thực Sự Nhận Được Gì Trước Khi Phải Trả Tiền
Đây là bảng dành cho người mới nhạy cảm về chi phí. Mỗi công cụ dưới đây được chia thành hai nhóm: sản phẩm freemium (có giới hạn nhưng không cần tự lo hạ tầng) và công cụ mã nguồn mở (không giới hạn trang nhưng bạn phải tự host tất cả).
Gói Freemium / Desktop Miễn Phí
| Công cụ | Giới hạn miễn phí | Giới hạn dự án/tác vụ | Hạn chế xuất dữ liệu | Giới hạn theo thời gian? | Khóa tính năng chính |
|---|---|---|---|---|---|
| Octoparse | Không giới hạn số trang/lần crawl | 10 tác vụ | 10K dòng/export; 50K dòng/tháng | Không (vĩnh viễn) | Cloud, lên lịch, xoay IP, API |
| ParseHub | 200 trang/lần chạy | 5 dự án công khai | CSV/JSON | Không (vĩnh viễn) | Dự án/dữ liệu có thể công khai; lưu 14 ngày |
| Thunderbit | 6 trang/tháng | Không áp dụng | Excel/CSV, Sheets, Airtable, Notion | Không (vĩnh viễn) | Phân trang, trang con, bulk, lịch chạy là Starter |
| Firecrawl | 1,000 credit/tháng | Không áp dụng | Tất cả định dạng | Không (vĩnh viễn) | 2 request đồng thời; giới hạn tốc độ thấp |
| Screaming Frog | 500 URL/lần crawl | Không giới hạn lượt chạy | Xuất dữ liệu hạn chế | Không (vĩnh viễn) | Kết xuất JS, lưu crawl, trích xuất tùy biến, tích hợp |
Công Cụ Mã Nguồn Mở (Tự Host)
| Công cụ | Giới hạn trang | Giấy phép | Bạn phải trả tiền cho |
|---|---|---|---|
| Scrapy | Không có | BSD | Compute, băng thông, lưu trữ, tích hợp trình duyệt tùy chọn |
| Crawlee | Không có | Apache | Compute, băng thông, tiến trình trình duyệt |
| Crawl4AI | Không có | Apache-2.0 + ghi nhận tác giả | Compute, tiến trình trình duyệt, suy luận LLM tùy chọn |
| Playwright | Không có | Apache | Compute, tiến trình trình duyệt (CPU/RAM cao) |
| Colly | Không có | Apache | Compute, băng thông |
Nếu ngân sách phần mềm của bạn bằng 0 và bạn biết code, các công cụ mã nguồn mở sẽ tránh được quota theo trang từ nhà cung cấp, nhưng hạ tầng, giới hạn từ site mục tiêu và chi phí vận hành vẫn còn. Không biết code? Octoparse, ParseHub và Thunderbit đều có lộ trình miễn phí — chỉ cần chú ý các giới hạn và điều kiện riêng tư.
10 Phút Đầu Tiên Của Bạn: Hướng Dẫn Nhanh Cho 3 Cấp Độ Kỹ Năng

Lý thuyết thì hay. Thực hành mới quan trọng. Dưới đây là cách đi từ số 0 đến lần xuất dữ liệu đầu tiên trên 3 công cụ tiêu biểu — mỗi công cụ đại diện cho một cấp độ kỹ năng.
Lộ Trình Không Code: Bắt Đầu Với Thunderbit
- Cài Thunderbit browser extension
- Mở trang mục tiêu (ví dụ: trang listing sản phẩm, danh bạ hoặc kết quả tìm kiếm)
- Bấm biểu tượng Thunderbit và chọn AI Suggest Fields — AI sẽ tự nhận diện cột dựa trên nội dung trang
- Rà soát và chỉnh các trường được đề xuất (đổi tên, xóa hoặc thêm cột; thêm Field AI Prompts để phân loại hoặc định dạng)
- Bấm Scrape
- Xem kết quả trong extension, rồi xuất sang Excel, Google Sheets, Airtable hoặc Notion
Trên một trang tương thích, quy trình này được thiết kế để chỉ cần vài bước thiết lập chứ không biến thành một dự án lập trình.
Xem thêm hướng dẫn chi tiết về lấy dữ liệu từ trang web bằng Thunderbit.
Lộ Trình Cho Người Mới Python: Bắt Đầu Với Scrapy
Xem phần quickstart có chú thích ở trên về Scrapy. Các lệnh chính là pip install scrapy, scrapy startproject, chỉnh spider với ROBOTSTXT_OBEY = True và DOWNLOAD_DELAY, rồi chạy scrapy crawl example -o output.json. Hãy kiểm tra selector trong scrapy shell trước khi mở rộng. Thời gian thực hiện phụ thuộc vào kinh nghiệm setup Python của bạn.
Lộ Trình JavaScript: Bắt Đầu Với Crawlee
Xem phần quickstart của Crawlee ở trên. Chạy npx crawlee create my-crawler, chọn template Playwright, chỉnh handler rồi npm start. Kết quả sẽ xuất hiện dưới dạng JSON trong thư mục dataset cục bộ. Hãy thêm maxRequestsPerCrawl và giới hạn domain trước khi mở rộng.
Để có một hướng dẫn dài hơn theo kiểu Python-first, cho thấy cách một dự án crawler được ghép lại với nhau, khóa học này là một tài liệu bổ trợ hữu ích:
5 Sai Lầm Người Mới Thường Mắc Khi Crawl Lần Đầu (Và Cách Tránh)

Những lỗi này xuất hiện liên tục trên forum, nhưng hầu như không có bài top đầu nào dành riêng một phần cho chúng.
Sai Lầm 1: Dùng Crawler Chỉ HTTP Cho Trang Render Bằng JavaScript
Vấn đề: nhiều website hiện đại tải dữ liệu qua JavaScript sau phản hồi HTML ban đầu. Một request HTTP đơn giản chỉ trả về trang khung với các thẻ <div> trống — không có dữ liệu.
Cách khắc phục: Trước khi chọn công cụ, hãy mở trang mục tiêu, chuột phải và xem source. Nếu dữ liệu bạn cần không nằm trong HTML thô, bạn cần một công cụ có render trình duyệt: Playwright, PlaywrightCrawler của Crawlee, hoặc công cụ không cần code như Thunderbit hay Octoparse có render trong trình duyệt. Nhưng đừng mặc định dùng browser nếu HTTP là đủ — vì sẽ tăng chi phí và độ phức tạp.
Sai Lầm 2: Bỏ Qua robots.txt và Quy Tắc Crawl-Delay
Vấn đề: robots.txt là một chuẩn cho biết những đường dẫn nào một crawler cụ thể được phép truy cập. Bỏ qua chính sách crawl của website có thể dẫn đến bị chặn, gây hại vận hành và rủi ro tuân thủ.
Cách khắc phục: Luôn kiểm tra yoursite.com/robots.txt trước khi crawl, và xác minh mặc định thật sự của công cụ bạn chọn. Mặc định rất khác nhau: ví dụ Colly khởi tạo IgnoreRobotsTxt = true và cần cấu hình thủ công. Lưu ý rằng robots.txt là tín hiệu điều khiển crawl, không phải giấy phép pháp lý. Một đường dẫn được phép không đồng nghĩa với việc bạn có quyền thu thập hay tái sử dụng dữ liệu cho mọi mục đích.
Sai Lầm 3: Gửi Quá Nhiều Request Mà Không Giới Hạn Tốc Độ
Vấn đề: bắn hàng trăm request mỗi giây có thể làm quá tải server mục tiêu, khiến IP bị chặn, và nhìn chung là thực hành rất tệ.
Cách khắc phục: Thiết lập độ trễ dương. Trong Scrapy, dùng DOWNLOAD_DELAY = 2 và giảm CONCURRENT_REQUESTS_PER_DOMAIN. Trong Colly, cấu hình LimitRule với delay và parallelism. Các công cụ cloud/no-code thường xử lý việc này tự động, nhưng bạn vẫn nên kiểm tra cài đặt. Hãy bắt đầu với một request đang chạy mỗi domain và chỉ tăng lên khi hành vi cũng như điều khoản của site cho phép.
Sai Lầm 4: Chọn Công Cụ Cấp Doanh Nghiệp Cho Một Dự Án Nhỏ
Vấn đề: dựng một cluster Scrapy phân tán với xoay proxy và message queue chỉ để crawl 500 trang thì giống như thuê xe container để đi mua đồ ăn.
Cách khắc phục: Quay lại sơ đồ quyết định. Hãy ghép độ phức tạp của công cụ với quy mô dự án. Với các lần trích xuất nhỏ, một browser extension hoặc script đơn giản gần như luôn là lựa chọn đúng.
Sai Lầm 5: Không Kiểm Tra Dữ Liệu Đầu Ra
Vấn đề: người mới thường export dữ liệu mà không xem lại, rồi đến lúc sau mới phát hiện một nửa số dòng bị trống, trùng lặp hoặc lỗi ký tự.
Cách khắc phục: Luôn kiểm tra nhanh 10–20 dòng đầu tiên trước khi chạy toàn bộ crawl. Tìm các trường trống, lỗi mã hóa (mojibake), dòng trùng và giá trị bất thường. Hãy xác định schema mong đợi trước khi bắt đầu — cần có những cột nào, kiểu dữ liệu ra sao, trường nào là bắt buộc. Một lần crawl thành công không đồng nghĩa dữ liệu là chính xác.
“LLM-Ready Output” Là Gì, Và Vì Sao Quan Trọng Ngay Cả Khi Bạn Không Làm AI
“LLM-ready” xuất hiện khắp nơi trong marketing về crawler năm 2026. Hầu hết lời giải thích đều mặc định bạn đã biết vector database là gì. Dưới đây là cách hiểu thật đơn giản.
LLM-ready output là văn bản sạch, có cấu trúc, mà mô hình AI (như GPT hoặc Claude) có thể đọc trực tiếp mà không cần làm sạch thủ công. Hãy coi nó là khác biệt giữa việc đưa cho ai đó một bảng tính được sắp xếp gọn gàng với một đống trang web đã in ra, vẫn còn quảng cáo, menu điều hướng và banner cookie.
Vì sao bạn nên quan tâm ngay cả khi không xây chatbot? Vì các công cụ được thiết kế cho đầu ra LLM-ready thường tạo ra dữ liệu sạch và dễ dùng hơn cho mọi người. Ít hậu xử lý hơn, ít cột rác hơn, ít lỗi mã hóa hơn. Dữ liệu sạch thì vẫn là dữ liệu sạch, bất kể người hay máy đang đọc nó.
Những công cụ nào trong danh sách này cho đầu ra LLM-ready ngay từ đầu?
- Firecrawl → Markdown sạch, tóm tắt, JSON có cấu trúc
- Crawl4AI → Nhiều biến thể Markdown, chunk có cấu trúc, bảng
- Thunderbit → Các trường có cấu trúc do AI gợi ý, chuẩn hóa bằng prompt
Dưới đây là ví dụ trước/sau để dễ hình dung. HTML thô từ một trang sản phẩm có thể trông như thế này:
<div class="product-card">
<span class="price">$29.99</span>
<h2 class="title">Wireless Mouse</h2>
<p class="desc">Ergonomic design, 2.4GHz...</p>
<a href="/buy" class="btn">Add to Cart</a>
</div>
Đầu ra Markdown sẵn cho LLM từ Firecrawl:
## Wireless Mouse
- **Price:** $29.99
- **Description:** Ergonomic design, 2.4GHz
Đầu ra có cấu trúc từ Thunderbit:
| Tên sản phẩm | Giá | Mô tả |
|---|---|---|
| Wireless Mouse | $29.99 | Ergonomic design, 2.4GHz |
Cả hai đều dùng được ngay — không cần parse HTML, không cần loại quảng cáo, không cần map cột thủ công. Để xem AI-powered extraction so với scraping truyền thống khác nhau thế nào, hãy xem tổng quan về những AI web scraper tốt nhất.
Web Crawling Có Trách Nhiệm: Mẹo Nhanh Về Đạo Đức Và Tuân Thủ
Đạo đức và tuân thủ trong web crawling là điều không thể xem nhẹ:
- Kiểm tra robots.txt trước khi crawl bất kỳ website nào. Đây là tín hiệu điều khiển crawl tiêu chuẩn (RFC 9309), nhưng không phải là giấy phép pháp lý hay ranh giới an toàn.
- Tôn trọng rate limit và header Retry-After. Hãy giảm tốc hoặc dừng khi gặp phản hồi 429 và 503.
- Chỉ dùng dữ liệu công khai hoặc được cho phép. Ưu tiên API chính thức hoặc chức năng export nếu nó đáp ứng nhu cầu của bạn.
- Kiểm tra điều khoản sử dụng của website. Việc nội dung công khai có thể nhìn thấy không đồng nghĩa với việc được phép thu thập hoặc tái sử dụng.
- Cẩn trọng với dữ liệu cá nhân. Hạn chế thu thập, đặt quy tắc lưu trữ/xóa, và xin đánh giá chuyên môn cho các mục đích nhạy cảm. GDPR và các quy định tương tự vẫn áp dụng bất kể bạn dùng công cụ nào.
Nhiều công cụ có cài đặt hỗ trợ crawl có trách nhiệm, nhưng việc cấu hình không chuyển trách nhiệm khỏi người vận hành. Để hiểu sâu hơn về quy trình nền tảng, hãy xem bài giải thích của chúng tôi về web scraping là gì.
Bạn Nên Bắt Đầu Với Web Crawler Nào?
Tóm tắt nhanh theo trình độ:
- Không code: Thunderbit để trích xuất trang có hỗ trợ AI, Octoparse để dựng workflow trực quan, ParseHub cho luồng nhiều bước phức tạp, Screaming Frog cho audit SEO
- Python trung cấp: Scrapy cho crawl HTTP lớn, Crawl4AI cho pipeline LLM
- JavaScript trung cấp: Crawlee cho crawl SPA hiện đại, Playwright cho tự động hóa trình duyệt phức tạp
- Go: Colly cho crawl HTTP nhanh (với cấu hình robots và rate limit rõ ràng)
- API được quản lý: Firecrawl cho đầu ra Markdown sạch mà không cần tự host
Crawler tốt nhất là crawler phù hợp với dữ liệu, quyền truy cập, trình độ và giới hạn vận hành của bạn. Hãy bắt đầu đơn giản, test trên một lượt nhỏ rồi mới tăng độ phức tạp khi dự án thực sự cần. Nếu bạn muốn thử trích xuất có hỗ trợ AI, Thunderbit browser extension cho bạn một lộ trình không cần code từ trang tương thích đến bảng tính.
Tìm hiểu thêm
- AI Web Scraping
- Web Scraping Không Cần Code
- Web Scraping Là Gì
- Instant Data Scraper Alternatives
- Scraping LinkedIn
Câu Hỏi Thường Gặp
1. Web crawler là gì và khác web scraper như thế nào?
Crawler là công cụ khám phá và truy xuất trang — nó theo link, quản lý hàng đợi URL, xử lý khử trùng lặp và giới hạn độ sâu. Scraper là công cụ trích xuất dữ liệu có cấu trúc cụ thể từ các trang đó — nó parse HTML, chọn field và xuất bản ghi. Hầu hết công cụ hiện đại đều làm cả hai ở các mức độ khác nhau, và hai thuật ngữ này thường bị dùng thay thế cho nhau, nhưng sự khác biệt vẫn quan trọng khi chọn công cụ: một số công cụ (như Playwright) rất mạnh về render trang nhưng không cung cấp hạ tầng crawl, trong khi những công cụ khác (như Scrapy) cung cấp toàn bộ pipeline crawl nhưng cần plugin để render JavaScript.
2. Web crawler nào tốt nhất cho người không biết code?
Thunderbit, Octoparse và ParseHub là ba lựa chọn no-code hàng đầu cho trích xuất dữ liệu chung. Thunderbit dùng AI để gợi ý field và hoạt động như một browser extension; Octoparse có trình dựng workflow trực quan với Auto-detect; ParseHub nổi trội ở các luồng nhiều bước phức tạp. Với nhu cầu chỉ liên quan đến SEO, bản miễn phí của Screaming Frog có thể crawl tối đa 500 URL mà không cần code.
3. Web crawler có miễn phí không?
Có hai nhóm. Công cụ mã nguồn mở hoàn toàn (Scrapy, Crawlee, Crawl4AI, Playwright, Colly) không tính phí theo trang, nhưng bạn phải tự host hạ tầng và chi trả cho compute, băng thông và lưu trữ. Công cụ freemium (Octoparse, ParseHub, Thunderbit, Firecrawl, Screaming Frog) có gói miễn phí với các giới hạn khác nhau về số trang, dự án, export hoặc tính năng. Xem bảng so sánh gói miễn phí ở trên để biết chi tiết.
4. Web crawler có xử lý được website nặng JavaScript không?
Có, nhưng không phải tất cả. Các công cụ có render trình duyệt tích hợp — Playwright, Crawlee (PlaywrightCrawler), Octoparse, ParseHub, Crawl4AI và Thunderbit (qua Browser Mode) — đều xử lý được nội dung tải bằng JavaScript. Scrapy và Colly là HTTP-first và cần tích hợp trình duyệt riêng để render JS. Screaming Frog chỉ hỗ trợ render JavaScript ở bản trả phí. Luôn kiểm tra xem trang mục tiêu có thật sự cần browser hay không bằng cách xem HTML source trước.
5. Web crawling có hợp pháp không?
Không có câu trả lời chung là có hoặc không. Phân tích pháp lý phụ thuộc vào loại dữ liệu, cách truy cập, mục đích sử dụng, điều khoản website, hợp đồng, quy định sở hữu trí tuệ, nghĩa vụ riêng tư như GDPR và thẩm quyền áp dụng. robots.txt là tín hiệu điều khiển crawl, không phải giấy phép pháp lý, và việc nội dung công khai có thể xem không đồng nghĩa với việc được phép thu thập. Với các tình huống cụ thể — đặc biệt liên quan đến dữ liệu cá nhân, nội dung có bản quyền, xác thực đăng nhập hoặc tái sử dụng thương mại — hãy tham khảo chuyên gia pháp lý đủ thẩm quyền.


