Web Product Scraper

Ecommerce scraper:
an online shop's products to Excel, photos included.

An ecommerce scraper has one hard job: looking at a shop page and knowing which text is the product name, which number is the price, which is the old price, and which pictures belong to which product. Web Product Scraper does that in Chrome's side panel, for the big shop platforms and for most independent shops, and exports the result to Excel, CSV or JSON, with the photos in a folder per product. This page explains how it decides, what it reads, and where it stops.

Add to Chrome, it's free No account · private by default
Video: Choose pages, read a product page or paste a list of links (part 3 of 8)0:50
Watch: this page, all pages, a product page or a list of links. This page, all pages or a range of products; a single product page with its own photos and editable fields; and a pasted list of product and category links from any shop, scraped in one run. Transcript and details on the video page, watch on YouTube.

How do I scrape products from an ecommerce website?

Use a scraper that understands products rather than one that copies tables. Open the shop's category, search or product page in Chrome, click the Web Product Scraper icon, choose how many pages to read and press the Scrape button. Each product becomes a row with its name, price, list price, SKU and photos, ready to download as Excel, CSV or JSON, or as a ZIP of images sorted by product.

Web Product Scraper sidebar beside a shop category page, showing the products as a table with image, name and price columns

How it decides what each value is

Several sources on a page can describe the same product. Each field is taken from the most trusted one that has it.

Your own rules

If you have taught the shop with "Teach this site", the value you pointed at wins over everything else.

The platform's reader

On Shopify, WooCommerce, Magento and BigCommerce stores, a reader that knows the platform's own markup and data takes the price, the SKU and the gallery from where the platform keeps them.

Structured product data

Most other shops describe each product in the page for search engines (JSON-LD, Open Graph tags). Those machine-readable values come next.

Product cards and markup

Last comes the page as people see it: the product cards of a listing, headings, price text and images.

Flags, not guesses

A field nobody offers stays empty rather than invented, and a row whose value came from weak markup is named in the needs_review column, so you check those few rows.

What each platform reader adds

One-line versions; each platform has its own page below.

Shopify

Reads a collection from the store's public product feed, 250 products per request, so no product page has to be opened.

WooCommerce

Follows product links only, never the add-to-cart buttons, and turns WordPress's resized photo copies back into the uploaded file.

Magento 2

On product pages, takes prices from the numbers in the price box and the gallery from the image list the page carries for its zoom.

BigCommerce

Reads the SKU from the theme's product data and swaps small CDN copies for the original upload.

Independent shops

Uses the shop's structured product data and product cards; most shops built on other systems publish enough of both.

When it reads wrong

Press Pick next to the wrong field and click the right value once. The rule is saved for that shop and used on every page of it.

The kinds of shop page it reads

Category and collection pages

The listing with its product cards; every card becomes a row, and duplicates across pages are kept once.

Search results

A shop's own search page is read like a category, brand and price included.

A single product page

That product only, with its gallery; the recommended and recently viewed products under it are left out.

Long listings

Numbered pages, listings that grow as you scroll, and Load more buttons, for as many rounds as you set.

Four ways to get products off a shop website

Copying by hand works for ten products and falls apart at a hundred: names, prices and photos have to be copied one by one, and every photo saved and renamed.

General table scrapers turn any list on a page into rows. They are free and quick, but they do not know which number is the price and which is the struck-out price, and they do not save the photos as files.

Desktop apps and cloud services scrape almost any website, on a schedule and at scale, with proxies and APIs. They need an account, often a paid plan, and a task to design before the first export.

A product scraper in the browser, like this one, sits between them: it knows what a product, a price and a gallery are, needs no code and no account, and saves the photos in a folder per product. It runs while you watch, on pages you open yourself, so it is not meant for scheduled crawling of whole marketplaces.

Where it stops

One row per product, or per variant

A product's row holds the price its page shows; tick Variants for a row per size or colour when the shop publishes them (on Magento and BigCommerce, only via their structured data).

Only what you open

A run starts from the shop page in your tab and the pages it leads to. There is no list of sites crawled in the background.

Run size

A run stops at 500 listing pages or at the number of products you chose; start another run to add more.

Shops that say no

Page loads are spaced out, and the run stops by itself when a shop starts refusing. Each shop's terms still apply to what you take.

Frequently asked questions

Is it legal to scrape an ecommerce website?

Reading public product pages is common, but each shop sets its own terms and some forbid automated collection. Read them, take only what you need, and keep the default pauses between pages.

Does it work on shops built with JavaScript?

Yes. It reads the page as Chrome shows it, after the shop's scripts have run, and the product pages it opens are ordinary Chrome tabs.

What can it not read?

Catalogues that exist only inside an app, as a PDF or as pictures of a price list. It also stops on shops that block automated page loads.

How is this different from a general web scraper?

A general scraper copies whatever table it finds. This one knows what a product is: it tells the price from the old price, follows each product to its own page, and saves the photos as files.

Add to Chrome, it's free