Kohl’s is one of the largest retail and department chains in the United States, with over 1,200 locations across the country. Maxwell Kohl founded Kohl’s in 1927, and now it generates over $18 billion dollars in revenue. Kohl’s sells everything from clothing, houseware, electronics and much more, similar to its competitors: Target, Walmart and Macy’s. Visit our previous guides on web scraping Target, scraping Walmart, and scraping Macy’s!
However, in this guide, we will show you how to scrape Kohl’s products from their website, using ParseHub, our free web scraper.
- Begin by opening the ParseHub application, and log in.
- Create a project with the “New Project” button.
- Enter the Kohl’s page URL you wish to scrape, we will use this URL to scrape men’s shoes: https://www.kohls.com/catalog/mens-athletic-shoes-sneakers-shoes.jsp?CN=Gender:Mens+Product:Athletic%20Shoes%20%26%20Sneakers+Department:Shoes&icid=allmensshoes-VN1-athletic&pfm=browse%20p13n_control%20Visual%20Nav&kls_sbp=71162582631958939332001604729725169439
- Click the first product’s name to extract it, the rest of the product names should turn yellow.
- Click the next product’s name, and then all product names should turn green.
- Rename this selection on the left to “shoe”.
To scrape additional details from each product, we need to use ParseHub’s Relative Select tool.
- Begin by clicking the PLUS(+) button next to the “shoe” selection we made earlier.
- Choose “Relative Select” and click the first shoe’s name again.
- An arrow should appear, point it to the first shoe’s price, and click to extract it.
- Redo this with the second pair of shoes, to train the ParseHub algorithm.
- Now, all prices should be extracted, rename this selection on the left to “price”.
Scraping Star Ratings
- Once again, click the PLUS(+) button next to your “shoe” selection and choose “Relative Select”
- Click the first shoe’s name and hover the arrow over the star ratings.
- There is a “span” and “a” tag, make sure you click when the “a” tag is shown.
- Do the same steps, for the next shoe, by clicking the name and then the “a” tag.
- Rename this selection on the left to “rating”.
- Expand the selection and delete the URL extraction.
- Click the “rating” extraction and under the “Extract” dropdown, choose “title Attribute”.
- Now all the star ratings will be shown out of 5 stars!
If we ran the scrape now, only the first page would be scraped. We will use ParseHub’s pagination feature to scrape multiple pages:
- Firstly, scroll all the way down the first page until you see the next page button.
- Click the PLUS(+) button again, but this time next to the “page” selection.
- Choose “Select” and click the next page button to extract it.
- Rename this selection to “pagination” and expand it, to delete the extraction.
- Click the PLUS(+) button next to the “pagination” selection you just made, and choose “Click”.
- You will be asked if this is a next-page button, choose “Yes”.
- Now you can choose the additional amounts of pages you wish to scrape, we chose 1 which is 2 pages in total.
Starting Your Scrape
Now that you have extracted the shoe names, prices and ratings, and have set up pagination to harvest data from multiple pages, we are ready to begin scraping! Begin by clicking the green “Get Data” button on the left pane. You can choose to Test, Run or Schedule your scrape. We chose Run to scrape the 2 pages a single time.
If you followed this guide correctly, your data should look similar to this:
If need help with your web scraping eCommerce websites, feel free to reach out to our live chat support, at ParseHub.com.