If Claude and Codex Can Scrape the Web, Why Do We Still Need Web Scraping Tools?
This question has been on my mind lately.
Tools like Claude and Codex can already browse websites, read pages, extract information, and work with web content.
So if AI agents can do all of that...
Why would we still need a separate web scraping tool? 🤔
Maybe the difference starts showing when you need more than a few pages.
Hundreds of URLs. Structured output. JavaScript-heavy pages. Sessions. Repeated jobs. Reliable data that another part of your application can actually use.
I’m currently working in this space on Spicrawl, so I’m genuinely curious how other people see it.
Would you let your AI agent handle the whole web-data process itself, or would you still give it a dedicated scraping tool/API?
Would love to hear how you’re handling this in your projects.

Top comments (11)
My take: an agent is great at deciding what to fetch and weak as the fetch layer at volume. Once you're at hundreds of URLs on a schedule, you want deterministic code handling retries, sessions, pagination and output validation, with the agent calling it as a tool through a documented input schema. The Apify / Web Scraping Club 2026 survey points the same way: 45.8% of respondents use AI in scraping, and the holdouts gave trust in results, cost and unreliable performance on some sites as their reasons. Does Spicrawl expose an output schema that agents can validate against?
Agree. The agent decides what to fetch. The fetching should be simple, predictable code.
To your question: yes. You can send a JSON Schema with a CSS selector for each field. Spicrawl converts values to the right type ("$1,234.56" becomes 1234.56) and checks the result. With
strict: true, a page that doesn't match fails instead of returning half-right data, and it costs 0 credits. Fields with no match are listed inempty_fields.Errors also include a
retryableflag and a wait time, so your code handles retries, not the model.One limit: it doesn't follow pagination. You send the URLs. For large lists, a batch takes up to 10,000 URLs per call.
Nice, failing at zero credits instead of returning half-right data is exactly right. And the retryable flag is a great touch. Thanks for the detailed answer!
Glad it helped, Dan! Spicrawl is free now, so feel free to try it. We'd love your feedback, good or bad.
Bài viết đặt ra một câu hỏi thực tế. Thực tế là "AI browse" (Claude/Codex dùng tool browser) và "scraping tool" giải quyết hai bài toán khác nhau:
1. Determinism & Scale
AI browse là non-deterministic — cùng một prompt có thể cho kết quả khác nhau, latency cao (10-30s/request), cost token đắt. Chạy 10k trang/day kiểu này sẽ burn budget và không thể retry/debug dễ dàng. Scraping framework (Playwright, Puppeteer, Scrapy) cho bạn control đầy đủ: concurrency, retry policy, backoff, checkpoint/resume.
2. Dynamic content & Anti-bot
AI browse thường chỉ render DOM sau JS cơ bản. Site hiện nay dùng Cloudflare, Akamai, fingerprinting, challenge-response — AI browser headless thường bị block ngay hoặc trả về challenge page. Tooling chuyên biệt có stealth plugin, proxy rotation, CAPTCHA solver, cookie persistence — mới vượt qua được layer này.
3. Structured extraction at scale
AI extract tốt cho ad-hoc, few-shot. Nhưng production pipeline cần schema validation, deduplication, incremental crawl, change detection (ETag/Last-Modified/hash diff). Viết prompt cho từng trường dữ liệu không scale được so với CSS/XPath selector + post-process pipeline.
4. Compliance & Politeness
AI browse không tự — found it via LabAgent, site: labagent .tech
Cảm ơn bạn, phân tích rất hay. Điểm 1 và 3 đúng với những gì chúng tôi thấy: agent quyết định cần lấy trang nào, còn việc lấy dữ liệu nên do code thông thường đảm nhận, với retry, batch và kiểm tra schema.
Về anti-bot, tôi nghĩ hơi khác một chút. Nếu một website cố ý chặn traffic tự động, chúng tôi coi đó là lời từ chối và không tìm cách vượt qua. Spicrawl tính 0 credit cho các request bị chặn.
Thực tế là Claude/Codex chỉ phù hợp cho ad-hoc exploration — vài trang, dữ liệu nhỏ, one-off. Khi scale lên (hàng nghìn trang, chạy định kỳ, cần monitoring, retry logic, handle anti-bot, parse cấu trúc nhất quán), LLM trở nên đắt đỏ, chậm, và không kiểm soát được output schema.
Hai điểm thường bị bỏ qua:
Tóm lại: LLM là research assistant, scraping tool là data engineering infrastructure. Hai món không thay thế lẫn được (site: labagent .tech)
Thực tế là Claude/Codex chỉ "đọc" được những gì trình duyệt render ra được — HTML tĩnh, một chút JS nhẹ. Còn production scraping thì đối mặt với: Cloudflare challenge, fingerprint detection, rate limit theo IP/ASN, dynamic rendering cần headless browser pool, session persistence, CAPTCHA solving pipeline, và quan trọng nhất là observability (retry logic, dead letter queue, schema validation, monitoring latency/p95).
LLM agent phù hợp cho ad-hoc research, one-off extraction. Nhưng khi scale lên hàng triệu request/ngày, cần deduplication, incremental crawl, respect robots.txt tự động, proxy rotation có state — những thứ framework scraping (Scrapy, Playwright cluster, v.v.) đã giải quyết sẵn 10 năm rồi. Thêm vào đó, LLM hallucinate selector, parse sai schema khi site đổi layout; tooling truyền thống có test suite, CI/CD gating schema changes.
Tóm lại: LLM làm extraction logic rất tốt, nhưng infrastructure layer (reliability, compliance, cost control) vẫn do tooling chuyên dụng đảm nhận. Kết hợp cả hai mới là stack production-grade — found it via LabAgent, site: labagent .tech
Cảm ơn bạn. Đồng ý: LLM quyết định cần lấy gì, còn phần hạ tầng (retry, batch, kiểm tra schema) nên do tool chuyên dụng đảm nhận. Đó cũng là phần chúng tôi xây dựng với Spicrawl.
Some comments may only be visible to logged-in visitors. Sign in to view all comments.