Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

crawler vs scraper

Can somebody distinguish between a crawler and scraper in terms of scope and functionality.

like image 949
Nayn Avatar asked Jul 08 '10 19:07

Nayn


People also ask

Is Google a web crawler or web scraper?

Famous search engines such as Google, Yahoo and Bing do web crawling and use this information for indexing web pages.

What is data scraping and crawling?

Data Crawling means dealing with large data sets where you develop your crawlers (or bots) which crawl to the deepest of the web pages. Data scraping, on the other hand, refers to retrieving information from any source (not necessarily the web).

What is the purpose of a crawler?

A crawler is a program that visits Web sites and reads their pages and other information in order to create entries for a search engine index.

What is the difference between data scraping and web scraping?

Web scraping is basically extracting data from websites in an automated manner. It is automated because it uses bots to scrape the information or content from websites. It's a programmatic analysis of a web page to download information from it. Data scraping involves locating data and then extracting it.


4 Answers

A crawler gets web pages -- i.e., given a starting address (or set of starting addresses) and some conditions (e.g., how many links deep to go, types of files to ignore) it downloads whatever is linked to from the starting point(s).

A scraper takes pages that have been downloaded or, in a more general sense, data that's formatted for display, and (attempts to) extract data from those pages, so that it can (for example) be stored in a database and manipulated as desired.

Depending on how you use the result, scraping may well violate the rights of the owner of the information and/or user agreements about use of web sites (crawling violates the latter in some cases as well). Many sites include a file named robots.txt in their root (i.e. having the URL http://server/robots.txt) to specify how (and if) crawlers should treat that site -- in particular, it can list (partial) URLs that a crawler should not attempt to visit. These can be specified separately per crawler (user-agent) if desired.

like image 83
Jerry Coffin Avatar answered Oct 06 '22 05:10

Jerry Coffin


Crawlers surf the web, following links. An example would be the Google robot that gets pages to index. Scrapers extract values from forms, but don't necessarily have anything to do with the web.

like image 20
Steven Sudit Avatar answered Oct 06 '22 05:10

Steven Sudit


Web crawler gets links (Urls - Pages) in a logic and scraper get values (extracting) from HTML.

There are so many web crawler tools. Visit page to see some. Any XML - HTML parser can used to extract (scrape) data from crawled pages. (I recommend Jsoup for parsing and extracting data)

like image 34
cuneytykaya Avatar answered Oct 06 '22 07:10

cuneytykaya


Generally, crawlers would follow the links to reach numerous pages while scrapers is, in some sense, just pulling the contents displayed online and would not reach the deeper links.

The most typical crawler is google bots, which would follow the links to reach all the web pages on your website and would index the contents if they found it useful(that's why you need robots.txt to tell which contents you do not want to be indexed). So we could search such kind of contents on its website. While the purpose of scrapers is just to pull the contents for personal uses and would not have much effects on others.

However, there's no distinct difference about crawlers and scrapers now as some automated web scraping tools also allow you to crawl the website by following the links, like Octoparse and import.io. They are not the crawlers like google bots, but they are able to automatically crawl the websites to get numerous data without coding.

like image 45
M John Avatar answered Oct 06 '22 07:10

M John