Crawl4AI và Firecrawl: tự vận hành hay dùng dịch vụ
Crawl4AI và Firecrawl là hai cái tên hay được nhắc khi cần biến trang web thành Markdown hay JSON cho mô hình AI. ProxyVN so sánh hai công cụ theo góc người vận hành: dữ liệu nằm ở đâu, tiền trả cho cái gì, có gắn được proxy riêng không và trích xuất bằng cách nào. Phần Crawl4AI có code đã chạy thật qua proxy có mật khẩu.
Crawl4AI và Firecrawl khác nhau ở mô hình vận hành
Hai công cụ cùng nhận một URL và trả về nội dung sạch để đưa vào mô hình ngôn ngữ, nhưng xuất phát điểm khác nhau. Hiểu xuất phát điểm giúp anh em đọc đúng các bảng so sánh, vì nhiều bảng đặt hai thứ khác loại cạnh nhau.
Crawl4AI là thư viện Python chạy trên máy của anh em
Crawl4AI là thư viện mã nguồn mở, cấp phép Apache 2.0, cài bằng pip và chạy trong chương trình Python của anh em. Bản mới nhất trên PyPI khi mình kiểm ngày 25/10/2026 là 0.9.5, phát hành ngày 14/10/2026, yêu cầu Python từ 3.10.
Thư viện điều khiển một trình duyệt qua Playwright, tải trang, chạy JavaScript, rồi chuyển nội dung sang Markdown hoặc trích xuất JSON. Mọi thứ chạy trên máy chủ của anh em, kể cả proxy và mô hình ngôn ngữ nếu có dùng. Gần đây nhóm phát triển mở thêm bản dịch vụ Crawl4AI Cloud, ở trạng thái ra mắt thử, giá có thể thay đổi.
Firecrawl là dịch vụ API, có bản tự cài
Firecrawl chủ yếu được dùng như một dịch vụ: anh em gửi URL tới API của họ, máy chủ của họ tải trang và trả về Markdown, HTML hay JSON. Có SDK cho Python và JavaScript, bản firecrawl-py mới nhất trên PyPI là 4.54.0.
Mã nguồn của Firecrawl cũng được công bố, nhưng theo giấy phép AGPL 3.0, chặt hơn Apache 2.0. Bản tự cài chạy bằng Docker Compose với nhiều dịch vụ đi kèm. Như bài so sánh của Bright Data về Crawl4AI và Firecrawl nhận xét, đây giống so sánh một hộp đồ nghề với một con dao đa năng hơn là hai sản phẩm cùng loại.
Ý nghĩa với người dùng proxy
Với Crawl4AI, IP mà website nhìn thấy là IP máy chủ của anh em hoặc proxy anh em gắn vào. Với Firecrawl bản dịch vụ, IP là của hạ tầng Firecrawl và các proxy họ chọn. Ai kiểm soát IP đi ra thì người đó kiểm soát việc bị chặn, giới hạn vùng và chi phí proxy. Đây là điểm khác biệt quan trọng nhất với người làm dữ liệu ở Việt Nam, phần sau sẽ nói rõ.
So sánh Crawl4AI và Firecrawl theo dữ liệu, chi phí, proxy và trích xuất
Bảng dưới gom các tiêu chí theo đúng câu hỏi người vận hành hay đặt ra. Số liệu lấy từ tài liệu chính thức kiểm ngày 25/10/2026, các mục sau giải thích chi tiết.
Tiêu chí |
Crawl4AI thư viện |
Firecrawl dịch vụ |
Firecrawl tự cài |
|---|---|---|---|
Giấy phép |
Apache 2.0 |
Dịch vụ trả phí |
AGPL 3.0 |
Nơi xử lý dữ liệu |
Máy của anh em |
Hạ tầng Firecrawl |
Máy của anh em |
Proxy riêng |
Có, theo từng request |
Chọn loại và quốc gia của họ |
Có, qua biến môi trường |
Chi phí chính |
Máy chủ, proxy, mô hình AI |
Credit theo trang |
Máy chủ, proxy, vận hành |
Trích xuất không cần AI |
Có, theo CSS hoặc XPath |
Markdown, HTML, liên kết |
Như bản dịch vụ, ít tính năng hơn |
Công sức vận hành |
Một thư viện, một trình duyệt |
Gần như không |
Nhiều dịch vụ đi kèm |

Dữ liệu, chi phí, proxy, trích xuất
Dữ liệu đi qua đâu
Khi chạy Crawl4AI, nội dung trang chỉ đi từ website qua proxy về máy của anh em. Không có bên thứ ba nào khác thấy dữ liệu, trừ khi anh em gửi nội dung tới một mô hình ngôn ngữ trên đám mây để trích xuất.
Với Firecrawl dịch vụ, mọi trang đều đi qua máy chủ của Firecrawl. Tài liệu trang scrape có tùy chọn zeroDataRetention cho trường hợp cần hạn chế lưu dữ liệu. Với dự án có ràng buộc về nơi lưu dữ liệu, anh em cần đọc kỹ điều khoản trước khi chọn bản dịch vụ. Bản tự cài giải quyết được chuyện này, nhưng hướng dẫn tự cài Firecrawl ghi rõ người tự cài phải tự lo bảo mật, lưu trữ, sao lưu và cập nhật.
Chi phí thật của mỗi bên
Theo trang giá của Firecrawl, 1 credit tương ứng 1 trang với scrape, crawl hay map cơ bản. Gói miễn phí có 1.000 credit mỗi tháng. Gói Hobby 19 USD mỗi tháng có 5.000 credit, Standard 99 USD có 100.000 credit, Growth 399 USD có 500.000 credit, trả theo năm thì rẻ hơn.
Hai chi tiết trên trang giá đáng chú ý. Định dạng JSON cộng thêm 4 credit mỗi trang, nghĩa là trích xuất có cấu trúc tốn gấp 5 lần lấy Markdown. Trang trả lỗi 403 hay 404 vẫn bị tính 1 credit, chỉ lần scrape không ra kết quả nào mới không bị tính.
Crawl4AI không tính phí theo trang, nhưng không miễn phí. Anh em trả tiền máy chủ đủ RAM để chạy trình duyệt, tiền proxy, và tiền gọi mô hình ngôn ngữ nếu dùng cách trích xuất bằng AI. Với vài nghìn trang mỗi tháng, gói dịch vụ có thể rẻ hơn tính cả công vận hành. Với hàng trăm nghìn trang, tự vận hành thường kinh tế hơn.
Quyền dùng proxy riêng
Đây là chỗ hai bên khác nhau rõ nhất. Tài liệu proxy của Crawl4AI cho gắn proxy riêng theo từng request, có sẵn chiến lược xoay vòng RoundRobinProxyStrategy, nhận cả HTTP và SOCKS5.
Tài liệu proxy của Firecrawl cho chọn loại proxy basic, enhanced hoặc auto, và chọn quốc gia qua tham số location. Danh sách quốc gia mình đếm được 26 nước, không có Việt Nam; proxy enhanced chỉ có ở Hà Lan và Mỹ. Tài liệu bản dịch vụ không mô tả cách gắn proxy của khách hàng. Bản tự cài thì có ba biến PROXY_SERVER, PROXY_USERNAME, PROXY_PASSWORD trong file docker-compose.yaml.
Nếu cần IP Việt Nam để lấy giá, tin đăng hay kết quả tìm kiếm đúng như người dùng trong nước thấy, Crawl4AI hoặc Firecrawl tự cài là hai lựa chọn gắn được proxy Việt Nam.
Cách trích xuất dữ liệu
Crawl4AI có hai hướng. Hướng không dùng AI là JsonCssExtractionStrategy, khai báo bộ chọn CSS cho từng trường, chạy nhanh và không tốn tiền mô hình. Hướng dùng AI là LLMExtractionStrategy, mô tả bằng lời rồi để mô hình ngôn ngữ đọc nội dung và trả JSON theo schema.
Firecrawl dịch vụ trả Markdown, HTML, danh sách liên kết, và JSON có cấu trúc bằng AI. Bản tự cài muốn dùng trích xuất bằng AI thì phải nối với một nhà cung cấp mô hình như OpenAI hay Ollama. Theo hướng dẫn tự cài, chụp màn hình và thao tác trên trang không có trong bản mặc định vì cần dịch vụ Fire-engine riêng.
Giấy phép ảnh hưởng tới dự án thế nào
Apache 2.0 của Crawl4AI cho phép dùng, sửa và đóng gói vào sản phẩm thương mại mà không buộc công bố mã nguồn phần mình viết, chỉ cần giữ thông báo bản quyền và giấy phép. Với đa số dự án thu thập dữ liệu nội bộ, đây là giấy phép dễ chịu nhất.
AGPL 3.0 của Firecrawl khác ở một điểm quan trọng. Nếu anh em sửa mã nguồn Firecrawl rồi cho người khác dùng qua mạng, ví dụ bán API thu thập dữ liệu dựng trên bản đã sửa, thì phải cung cấp mã nguồn bản sửa cho người dùng đó. Dùng nội bộ không sửa mã thì ít vướng hơn, nhưng vẫn nên ghi rõ phiên bản và nguồn gốc trong tài liệu dự án để sau này kiểm lại dễ dàng.
Mình không phải luật sư, nên với dự án thương mại có dùng Firecrawl tự cài, anh em nên nhờ người có chuyên môn đọc giấy phép. Chọn công cụ mã nguồn mở thì đọc giấy phép trước khi viết dòng code đầu tiên, không phải sau khi đã bán sản phẩm.
Chuẩn bị môi trường thử Crawl4AI và Firecrawl
Mình chạy thử Crawl4AI thật, còn Firecrawl chỉ đối chiếu tài liệu vì lý do ghi rõ bên dưới. Môi trường thử chạy trên một máy Windows 10, không dùng tài khoản trả phí nào.
Môi trường cho Crawl4AI
Crawl4AI cài trong một môi trường ảo Python riêng để không lẫn thư viện. Thông thường anh em chạy thêm lệnh crawl4ai-setup để tải trình duyệt Chromium. Trên Windows có sẵn Microsoft Edge 156, mình dùng tham số chrome_channel để Crawl4AI điều khiển Edge, bỏ qua bước tải trình duyệt.
python -m venv venv
venv\Scripts\python -m pip install crawl4ai==0.9.5
# Trên Linux hoặc khi không có Edge, chạy thêm:
venv\Scripts\crawl4ai-setup
Ghi rõ phiên bản trong lệnh cài là thói quen nên có. Crawl4AI ra bản mới khá dày, tên tham số đôi khi đổi giữa các bản, code chạy được hôm nay có thể báo lỗi với bản sau.
Site thử và proxy
Site thử có một trang dựng bằng JavaScript: HTML ban đầu chỉ có danh sách rỗng, script gọi API rồi mới chèn 20 sản phẩm vào. Tải bằng thư viện HTTP thường sẽ không thấy sản phẩm nào, nên đây là phép thử đúng cho công cụ dùng trình duyệt.
Giữa trình duyệt và site là một proxy HTTP yêu cầu tài khoản user1 và mật khẩu p@ss#2026. Proxy ghi lại mọi request kèm trạng thái xác thực, nhờ đó mình biết request nào thật sự đi qua proxy.
Vì sao chưa chạy được Firecrawl
Tài liệu Firecrawl ghi có thể gọi API mà chưa cần khóa. Mình gửi một request scrape trang example.com không kèm khóa, API trả lỗi với thông báo rằng IP của mình trông giống VPN hoặc proxy, nên cần khóa API mới dùng được. Tạo tài khoản nằm ngoài phạm vi bài thử, còn bản tự cài cần Docker mà máy thử không có.
Để bù lại, mình tải gói firecrawl-py 4.54.0 về và đọc mã nguồn SDK, xác nhận hàm scrape có tham số proxy kiểu chuỗi, khớp với ba giá trị basic, enhanced, auto trong tài liệu. Vì vậy mọi nội dung về Firecrawl trong bài dựa trên tài liệu chính thức và mã nguồn SDK, không phải kết quả chạy. Chi tiết bị từ chối này cũng đáng biết: nếu anh em gọi Firecrawl từ máy chủ đi qua proxy hay VPN, có thể gặp đúng lỗi này khi chưa có khóa.
Ví dụ tối thiểu với Crawl4AI và Firecrawl
Tác vụ là lấy danh sách 20 sản phẩm trên trang dựng bằng JavaScript, đi qua proxy có mật khẩu, trả về JSON gồm tên và giá. Bản Crawl4AI chạy thật, bản Firecrawl là code theo tài liệu để anh em đối chiếu.
Code Crawl4AI đã chạy
Đoạn dưới khai báo proxy trong CrawlerRunConfig như tài liệu khuyến nghị, chờ phần tử li.item xuất hiện, rồi trích xuất bằng bộ chọn CSS. Tham số --proxy-bypass-list với giá trị <-loopback> mình thêm cho chắc khi thử với địa chỉ 127.0.0.1; chạy lại không có nó request vẫn đi qua proxy, nên với site thật có thể bỏ.
import asyncio, json
from crawl4ai import AsyncWebCrawler, BrowserConfig, CacheMode, CrawlerRunConfig, ProxyConfig
from crawl4ai.extraction_strategy import JsonCssExtractionStrategy
schema = {
"name": "products",
"baseSelector": "li.item",
"fields": [
{"name": "name", "selector": ".name", "type": "text"},
{"name": "price", "selector": ".price", "type": "text"},
],
}
async def main():
browser = BrowserConfig(headless=True, chrome_channel="msedge", channel="msedge",
extra_args=["--proxy-bypass-list=<-loopback>"])
run = CrawlerRunConfig(
cache_mode=CacheMode.BYPASS,
wait_for="css:li.item",
proxy_config=ProxyConfig(server="http://127.0.0.1:8782",
username="user1", password="p@ss#2026"),
extraction_strategy=JsonCssExtractionStrategy(schema),
)
async with AsyncWebCrawler(config=browser) as crawler:
r = await crawler.arun(url="http://127.0.0.1:8781/app", config=run)
rows = json.loads(r.extracted_content or "[]")
print(r.success, r.status_code, len(rows), rows[:1])
asyncio.run(main())
Kết quả: success là True, status 200, 20 dòng, dòng đầu là San pham 1 giá 101500. Thuộc tính markdown cũng có đủ danh sách dưới dạng tiêu đề và giá. Cả lần chạy mất 3,62 giây tính cả khởi động trình duyệt, RAM đỉnh của cả cây tiến trình là 604 MB.
Code Firecrawl theo tài liệu
Với Firecrawl dịch vụ, đoạn tương đương gửi URL tới API kèm khóa. Đoạn dưới theo cấu trúc trong tài liệu proxy của Firecrawl, mình chưa chạy được vì lý do đã nêu. Trang dựng bằng JavaScript được Firecrawl tự xử lý ở phía máy chủ của họ.
from firecrawl import Firecrawl
firecrawl = Firecrawl(api_key="fc-YOUR-API-KEY")
doc = firecrawl.scrape("https://example.com",
formats=["markdown"],
proxy="auto",
location={"country": "US", "languages": ["en"]})
print(doc)
Với bản tự cài, hướng dẫn chính thức dùng lệnh curl tới cổng 3002 trên máy, endpoint /v2/scrape, và kiểm sẵn sàng qua /v0/health/readiness. Bản tự cài mặc định không bật xác thực API, nên không được để cổng này mở ra Internet; hướng dẫn chính thức nhấn mạnh điều này.
So sánh đầu ra
Crawl4AI trả về một đối tượng chứa HTML, Markdown, nội dung đã trích xuất, mã trạng thái, thông báo lỗi. Firecrawl trả về JSON có trường success, data chứa markdown và metadata với statusCode. Về mặt dùng, hai đầu ra tương đương: đều đưa thẳng được vào mô hình ngôn ngữ.
Khác biệt nằm ở chỗ ai trả tiền cho phần trích xuất có cấu trúc. Với Crawl4AI, bộ chọn CSS không tốn gì thêm. Với Firecrawl dịch vụ, định dạng JSON tốn thêm 4 credit mỗi trang theo trang giá. Nếu trang có cấu trúc rõ, chọn CSS rẻ hơn nhiều so với để AI đọc.
Gắn proxy riêng cho Crawl4AI và Firecrawl
Phần này gom các chi tiết khi gắn proxy mà mình chỉ thấy khi chạy thật, cùng cách gắn proxy cho Firecrawl tự cài theo file cấu hình chính thức.

Viết chuỗi proxy đúng cách
Ba cách viết chuỗi proxy trong Crawl4AI
Crawl4AI có hàm ProxyConfig.from_string để đọc chuỗi proxy. Mình thử ba cách viết với cùng mật khẩu chứa @ và dấu thăng, kết quả khác nhau:
- Dạng ip:port:user:pass, tức 127.0.0.1:8782:user1:p@ss#2026: tách đúng, mật khẩu giữ nguyên.
- Dạng URL chưa mã hóa http://user1:p@ss#2026@127.0.0.1:8782: tách sai, máy chủ bị hiểu thành một chuỗi lạ chứa ss#2026, mật khẩu chỉ còn chữ p.
- Dạng URL đã mã hóa, @ thành %40 và dấu thăng thành %23: tách đúng và tự giải mã mật khẩu.
Nhà cung cấp proxy thường gửi đúng dạng ip:port:user:pass, nên dán thẳng vào là an toàn nhất. Nếu buộc phải dùng dạng URL, mã hóa user và mật khẩu trước. Bài định dạng proxy hướng dẫn tách đúng từng phần.
Trình duyệt tự gửi request ra ngoài qua proxy
Log proxy của lần chạy có bốn dòng: trang /app, API sản phẩm, biểu tượng favicon, và một kết nối CONNECT tới www.bing.com cổng 443. Dòng cuối không do trang thử gọi, mà do trình duyệt Edge tự gửi khi khởi động.
Chi tiết này quan trọng khi anh em trả tiền proxy theo dung lượng. Mỗi lần mở trình duyệt có thể tốn thêm một ít lưu lượng cho request nền của chính trình duyệt. Với Chromium do Playwright tải về, số request nền ít hơn Edge, nhưng vẫn nên xem log để biết proxy đang mang những gì.
Gắn proxy cho Firecrawl tự cài
File docker-compose.yaml trong mã nguồn Firecrawl truyền ba biến PROXY_SERVER, PROXY_USERNAME, PROXY_PASSWORD vào dịch vụ API và dịch vụ Playwright. Anh em khai báo chúng trong file .env cạnh docker-compose.yaml, cùng chỗ với các biến bắt buộc của bản tự cài.
USE_DB_AUTHENTICATION=false
POSTGRES_USER=postgres
POSTGRES_PASSWORD=thay-bang-chuoi-ngau-nhien-dai-tren-32-ky-tu
POSTGRES_DB=postgres
PROXY_SERVER=http://ip-proxy:port
PROXY_USERNAME=user
PROXY_PASSWORD=pass
Ba dòng proxy trong khối trên là cách mình đọc từ file Compose, chưa chạy thử vì máy không có Docker. Sau khi khởi động, anh em scrape một trang hiển thị IP để xác nhận IP đi ra là IP proxy. Hướng dẫn chính thức khuyên giữ lần chạy đầu đơn giản rồi mới thêm từng thay đổi, nên thêm proxy sau khi lần scrape đầu đã chạy được.
Xoay proxy trong Crawl4AI
Crawl4AI đọc danh sách proxy từ biến môi trường PROXIES, mỗi proxy cách nhau dấu phẩy, rồi xoay vòng bằng RoundRobinProxyStrategy khi chạy nhiều URL bằng arun_many. Bài Crawl4AI proxy hướng dẫn chi tiết phần xoay vòng và giữ cùng IP cho một phiên.
Với trang cần đăng nhập, xoay IP giữa các request trong cùng phiên dễ làm phiên bị đăng xuất. Trường hợp đó nên dùng một proxy tĩnh cho cả phiên, chỉ xoay giữa các phiên khác nhau.
Một mẹo nhỏ khi thử danh sách proxy mới: cho Crawl4AI tải một trang hiển thị IP với từng proxy trước khi chạy việc thật, như ví dụ xoay vòng trong tài liệu chính thức. Proxy nào trả IP không khớp hoặc lỗi kết nối thì loại ngay, tránh để nó làm hỏng một phần kết quả của lần chạy lớn.
Xử lý lỗi và giới hạn request với Crawl4AI và Firecrawl
Mỗi bên báo lỗi theo một kiểu, và giới hạn tốc độ đến từ những chỗ khác nhau. Biết trước giúp anh em viết phần xử lý lỗi đúng ngay từ đầu.
Đọc kết quả lỗi của Crawl4AI
Mỗi lần arun trả về một đối tượng có success, status_code và error_message. Mình luôn kiểm cả ba, vì success bằng True với status 403 nghĩa là tải được trang chặn, không phải tải được dữ liệu. Danh sách dưới là cách mình phân loại:
- success False: lỗi kết nối, hết thời gian chờ, proxy từ chối; đọc error_message để biết nguyên nhân.
- status 403 hoặc 429: site chặn hoặc giới hạn; đổi proxy hoặc giảm tốc.
- status 200 nhưng extracted_content rỗng: bộ chọn CSS sai hoặc trang chưa dựng xong; kiểm lại wait_for.
- Markdown chứa chữ kiểu xác minh bạn là người: trang chống bot, cần proxy dân cư hoặc giảm tốc độ.
Giới hạn của Firecrawl dịch vụ
Trang giá của Firecrawl ghi giới hạn số request mỗi phút theo gói. Với scrape, map và search, gói miễn phí là 10 request mỗi phút, Hobby 100, Standard 500, Growth 5.000. Số trình duyệt chạy cùng lúc lần lượt là 2, 5, 25, 50 cho các gói này.
Lưu ý về tiền: trang lỗi 403 hay 404 vẫn bị tính credit. Nếu danh sách URL có nhiều đường dẫn chết, anh em nên lọc trước bằng request HEAD rẻ tiền, thay vì để Firecrawl tải từng trang rồi trả tiền cho trang lỗi.
Giới hạn khi tự vận hành
Với Crawl4AI hay Firecrawl tự cài, giới hạn đến từ RAM và từ website. Một trình duyệt trong bài thử chiếm khoảng 600 MB. Chạy song song 10 trang cùng lúc có thể cần vài GB, tùy trang nặng nhẹ.
Phía website, giới hạn là số request họ chấp nhận từ một IP. Đây là chỗ proxy giúp chia tải, nhưng không thay được việc giảm tốc. Tự vận hành nghĩa là anh em tự chịu trách nhiệm gửi request với tốc độ hợp lý, không có bên nào giới hạn hộ.
Kiểm dữ liệu đầu ra
Dù dùng công cụ nào, sau mỗi lần chạy nên kiểm số dòng so với kỳ vọng, các trường bắt buộc không rỗng, và Markdown không chứa trang lỗi. Với dữ liệu đưa vào mô hình AI, kiểm thêm độ dài Markdown: trang ngắn bất thường thường là trang chặn hoặc trang trống.
Với trích xuất bằng AI, kiểm cả việc mô hình có bịa trường không, ví dụ trả về giá cho sản phẩm không có giá trên trang. So một mẫu nhỏ với trang gốc mỗi lần đổi mô hình hay đổi câu lệnh.
Khi nào chọn Crawl4AI và Firecrawl và checklist trước khi chạy thật
Không có lựa chọn đúng cho mọi dự án. Phần này gom các tình huống thường gặp và checklist mình dùng trước khi chạy với site thật.

Chọn theo tình huống
Tình huống hợp với Crawl4AI
Đội có người viết Python, cần IP Việt Nam hoặc proxy riêng, muốn dữ liệu không đi qua bên thứ ba, hoặc số trang đủ lớn để phí theo trang trở nên đắt. Crawl4AI cũng hợp khi trang có cấu trúc rõ và trích xuất bằng CSS là đủ, không cần trả tiền mô hình AI.
Bài web scraping dữ liệu AI bằng proxy có thêm các mô hình triển khai khi thu thập dữ liệu cho AI. Với nhiều dự án chạy cùng lúc, bài proxy pool hướng dẫn chia proxy theo mục đích.
Tình huống hợp với Firecrawl
Đội không có người vận hành máy chủ, cần kết quả nhanh, số trang vừa phải, và không cần IP Việt Nam. Firecrawl dịch vụ cũng hợp khi anh em dùng công cụ không lập trình hoặc nền tảng tự động hóa có sẵn tích hợp với Firecrawl.
Firecrawl tự cài hợp với đội đã quen vận hành Docker, muốn giao diện API giống bản dịch vụ nhưng giữ dữ liệu trong nhà và gắn proxy riêng. Cần đọc kỹ giấy phép AGPL nếu định sửa mã nguồn và cung cấp lại như một dịch vụ cho người khác.
Chọn proxy cho bản tự vận hành
Site tĩnh, ít chống bot chạy ổn với proxy datacenter. Site thương mại điện tử, mạng xã hội, trang có hệ thống chống bot cần proxy dân cư hoặc 4G để giống người dùng thật. Trang cần đăng nhập nên dùng IP tĩnh để giữ phiên.
Khi cần mua proxy Việt Nam cho Crawl4AI hay Firecrawl tự cài, ProxyVN có proxy dân cư tĩnh Viettel, VNPT, FPT, datacenter Việt Nam, proxy 4G và proxy xoay. Proxy dùng giao thức HTTP hoặc SOCKS5, cấp user và password đúng dạng ip:port:user:pass mà Crawl4AI đọc trực tiếp được.
Checklist trước khi chạy thật
Danh sách dưới mình dùng trước mỗi dự án thu thập dữ liệu cho AI:
- Xác định dữ liệu có được phép đi qua bên thứ ba không; nếu không, loại bản dịch vụ.
- Xác định có cần IP Việt Nam không; nếu có, chọn bản gắn được proxy riêng.
- Ước tính số trang mỗi tháng để so chi phí credit với chi phí máy chủ và proxy.
- Ghi phiên bản Crawl4AI hoặc bản phát hành Firecrawl trong lệnh cài.
- Chạy thử vài trang, xem log proxy hoặc IP mà site nhìn thấy.
- Kiểm success, mã trạng thái và nội dung trích xuất, không chỉ kiểm success.
- Đọc robots.txt và điều khoản của site; Crawl4AI có tùy chọn check_robots_txt trong CrawlerRunConfig.
- Với bản tự cài Firecrawl, không mở cổng API ra Internet khi chưa có xác thực.
Dịch vụ bán sự tiện lợi, tự vận hành bán quyền kiểm soát. Chọn bên nào thì chọn luôn người chịu trách nhiệm cho IP, dữ liệu và chi phí.

Checklist trước khi chạy thật
Câu hỏi thường gặp
Crawl4AI có thay được Firecrawl không. Với phần lấy trang và chuyển Markdown, có. Với các tính năng như tác tử tự duyệt web hay thao tác trên trang của Firecrawl dịch vụ, Crawl4AI cần anh em tự viết thêm. So theo đúng tính năng dự án cần, không so theo danh sách tính năng.
Firecrawl dịch vụ có lấy được trang Việt Nam không. Lấy được trang công khai, nhưng danh sách quốc gia của proxy Firecrawl không có Việt Nam. Trang hiển thị khác nhau theo vùng có thể trả nội dung khác với người dùng trong nước thấy.
Có dùng cả hai cùng lúc được không. Được. Nhiều đội dùng Firecrawl dịch vụ cho phần khám phá nhanh và trang khó, dùng Crawl4AI cho phần thu thập định kỳ số lượng lớn với proxy riêng. Đầu ra đều là Markdown nên ghép vào cùng một quy trình dễ dàng.
Crawl4AI chạy trên máy yếu được không. Mỗi trình duyệt cần vài trăm MB RAM, bài thử đo được khoảng 600 MB cho cả cây tiến trình. Máy 2 GB RAM chạy được một hai trang cùng lúc; muốn chạy nhiều hơn thì cần máy mạnh hơn hoặc giảm số trang song song.
Crawl4AI và Firecrawl, chọn theo người kiểm soát
Crawl4AI và Firecrawl cùng biến trang web thành dữ liệu cho AI, khác nhau ở người kiểm soát IP, dữ liệu và chi phí. Cần IP Việt Nam hay giữ dữ liệu trong nhà thì tự vận hành với proxy riêng. Cần proxy ổn định, liên hệ Proxy.vn - Nhà cung cấp dịch vụ proxy chất lượng hàng đầu Việt Nam khi dùng Crawl4AI và Firecrawl.