New1 billion tokens free on sign-up — crawl, parse, chunk and embed on the houseSee pricing
SarvCrawlSarvCrawl

Glossary · Web crawlingUpdated

What is the difference between web crawling and web scraping?

Web crawling is discovering pages by following links from page to page; web scraping is extracting content or data from a page once you have it. A crawler answers “which URLs exist?”, a scraper answers “what is on this URL?”, and most real jobs do both.

01Crawling and scraping in more depthof 06

Crawling and scraping in more depth

A web crawler starts from a seed URL, fetches it, pulls out the links, and adds the ones in scope to a queue. Its output is a set of URLs, and its hard problems are scope, deduplication, politeness and knowing when to stop.

Web scraping is about a single page at a time. It fetches the URL, renders it if the content is built by JavaScript, and turns the HTML into something useful: clean text, markdown, a list of links or structured fields. Its hard problems are rendering, extraction and pages that block automated clients.

The terms are often used loosely. “Scrape this site” usually means crawl it and scrape every page found, and many crawlers scrape as they go because they need each page’s HTML to find the next links anyway.

Side by side

CrawlingScraping
InputA start URL and scope rulesOne URL, or a list of known URLs
OutputA set of discovered URLs, often with their pagesContent or data from each page
Main limitsDepth, page limit, path filtersOutput format, what counts as main content
Typical troubleDuplicate URLs, crawl traps, rate limitsJavaScript rendering, blocking, messy HTML
Good forWhole docs sites, site audits, archivesKnown pages, search results, single articles

A third operation sits between them: mapping, which lists a site’s URLs from its sitemaps and links without extracting page content. It is a cheap way to see how big a site is before deciding what to crawl.

Which one a job needs

  • You already know the URLs. Scrape them. Crawling adds requests and noise you do not need.
  • You want a whole section or site. Crawl it, with a depth and page limit, and let the crawler scrape each page.
  • You want to know what exists first. Map the site, then scrape or crawl the parts that matter.
  • You want to know when something changes. Neither, strictly: that is website change detection, which re-checks known pages on a schedule.

Common pitfalls

  • Crawling when a list would do. A crawl of a large site to get twenty known pages wastes time and the site’s capacity.
  • Scraping without scope. Following every link from a scraped page quickly turns a scrape into an unbounded crawl.
  • Treating crawl output as clean data. Crawled pages still need main-content extraction before they are useful to a model or a search index.
  • Ignoring the rules that apply to crawlers. robots.txt is written for automated discovery; respect it when crawling.

How SarvCrawl handles it

SarvCrawl keeps the three operations separate. Scrape fetches one URL, rendering it in headless Chromium when needed, and returns markdown, HTML, links or JSON. Crawl starts from a URL, stays on the same domain and under the seed’s path, respects robots.txt, and stops at max_depth (default 5) or limit (default 500 pages). Map lists URLs from sitemaps and links without scraping pages. Every job is asynchronous and returns a job_id; crawled and scraped pages land in a knowledge base.

curl -s -X POST https://crawl.sarv.com/api/jobs/crawl \
  -H "x-api-key: $KB_API_KEY" -H "Content-Type: application/json" \
  -d '{"kb_id":"kb_abc123","url":"https://docs.example.com/guide",
       "max_depth":3,"limit":200}'
# → 202 {"job_id":"…"}

Frequently asked questions

Is web crawling the same as web scraping?

No. Crawling discovers pages by following links; scraping extracts content from a page. A crawler usually scrapes each page it visits, which is why the words get mixed up.

Do I need a crawler to scrape a website?

Only if you do not know the URLs. If you have a list, scrape it directly. If you need everything in a section, crawl it.

Is crawling harder on a website than scraping?

Usually, because a crawl makes many requests to one host. Depth limits, page limits, path exclusions and delays keep the load reasonable.

Where does a sitemap fit in?

A sitemap is the site’s own list of URLs. Crawlers and mapping tools read it to find pages that are poorly linked, which makes discovery cheaper and more complete.

SarvCrawl

Turn any site into a searchable knowledge base

Crawl pages and parse documents into clean markdown, then chunk, embed and search them from one API.