Etsy might not come to mind when thinking about e-commerce giants like Amazon or eBay. But do not be fooled.

Etsy’s marketplace now has over 2.1 million sellers with over 60 million items in their inventory.

As a result, having easy access to their inventory data can be quite valuable. Here’s where web scraping can help.

Etsy and Web Scraping

By using a web scraper, you will be able to select specific data from ETSY products to extract into an excel spreadsheet for further analysis.

This could be quite helpful for competitor research or to build a list of potential customers who might use a material that you can supply to them.

For this example, let’s assume we are a supplier of aluminum. As a result, having a list of Etsy products and sellers working with aluminum would be incredibly valuable.

To complete this task, we will use ParseHub, a free and powerful web scraper to scrape the Esty results page for the term “aluminum”.

Scraping Etsy Product Data

Getting Started

  1. Download and install ParseHub for free. This is the web scraper we will be using for this project.
  2. Once installed, open ParseHub and click “New Project”. Enter the URL you want to scrape. In this case, we will scrape the results page for the term “aluminum” on Etsy.

Scraping Etsy Results Page

Once you submit the URL, ParseHub will render the site and you can start selecting the data you’d want to extract.

  1. Start by clicking on the name of the first product on the page. It will turn green to indicate that it has been selected. The rest of the product names on the page will turn yellow.
  1. Click on the second item on the list to select every product on the page. They will all now be highlighted in green.
  1. On the left sidebar, rename your selection to product. ParseHub is now extracting the name and URL of every product on the page. We will now select more information to extract.
  2. Using the PLUS(+) sign next to the product selection, choose the Relative Select command. With this command, you can click on the name of the first product and then on the seller name, an arrow will appear to show this selection.
  1. Rename this new Relative Selection to seller.
  2. ParseHub will now pull the seller name and product URL for each item on the page. Since we already pulled the product URL earlier, we will expand our relative select and remove the URL extraction.
  1. Repeat steps 4-5 to extract the product’s price, rating and number of reviews. When selection the product’s rating, use the Ctrl+1 keyboard shortcut to select all the stars under the product. Your project should now look like this:
ProTip: Want to scrape and download all the product images from this page? Check out our guide on scraping and downloading all images from a website.

Scraping Etsy Product Pages

ParseHub is now extracting all the info we have selected from the search results page. We will now setup ParseHub to click on every listing page and extract additional information.

  1. Use the PLUS(+) sign next to the product selection and select the “Click” command.
  1. A pop-up will appear asking you if this a “next page button”. Click “No” and choose “Create New Template”, name it product_page and click on the “Create New Template” button.
  1. A new browser tab will now open and render the first product page on the list. Just like we did at the very beginning of this project, we can now select different elements to extract from this page.
  1. In this case, we are mostly interested in more seller information. We will start by selecting the seller name to extract their seller URL. We will rename our selection to seller.
  1. Next up, we will use a Relative command to extract the seller name and location. Click on the PLUS(+) sign next to the seller selection and choose the Relative Select command.
  2. Use this command to extract the seller’s contact name and their location.

Adding Pagination

Lastly, we will now instruct ParseHub to click on the “next page” link of the search results page to scrape additional pages worth of results.

  1. First, go back to the browser tab displaying the search results and on the left sidebar, go back to main_template.
  1. Use the PLUS(+) sign next to the page selection and choose the select command.
  2. Using this command, select the “next page” link at the bottom of the search results page. Rename your selection to pagination.
  1. Expand the pagination selection and remove the two extraction commands under it.
  1. Use the PLUS(+) command next to the pagination selection and choose the Click command.
  2. A pop-up will appear asking you if this a “next page” button. Click “Yes” and input the number of times you’d like to repeat this process. In this case we will do 5 times.

Running and Exporting your Project

You are now ready to run you Etsy scrape job. Start by clicking on the green “Get Data” button on the left sidebar.

You can now click on the Run button and run your scrape job. Feel free to leave ParseHub, you will be notified via email once your scrape is completed.

Final Thoughts

You can now download your export as a CSV/Excel file and use your data for further analysis.

If you run into any issues through the setup of your project, reach out to use via email to hello(at)parsehub.com.