How to scrape eBay and extract listings data

David Barton
David Barton

Web scraping can let you extract structured data from eBay without using the official eBay API. Scrape and download product descriptions, prices, images, locations, merchant profiles, and product availability. Read on to find out why and how you should scrape eBay.

  1. Is there value in eBay data?
  2. Using an eBay scraper vs. eBay API
  3. How web scraping data is used
  4. Is it legal to scrape eBay?
  5. What structured scraped eBay data looks like
  6. Step-by-step guide to scraping eBay listings
  7. Other e-commerce web scrapers

Is there value in eBay data?

eBay is one of the oldest internet e-commerce sites. Launched in 1995, it now connects over 154 million buyers with 19 million sellers all over the world. That led to $19.5 billion in gross merchandise volume in the third quarter of 2021. And $12.5 billion of that was bought on mobile devices, so smart old eBay isn't being left behind in the shift to mobile.

Those numbers translate into a lot of data, including product descriptions, prices, images, locations, merchant profiles, product availability, and brand presence. If your business uses eBay, accessing that data could give you insights on eBay trending items and product research, help you find best-selling products, learn about your competitors, precisely adjust your prices in real-time to compete, and find opportunities that no amount of manual intelligence gathering can compete with.

But how can you get that data in a format you can easily use? Read on to find out why web scraping is the modern, efficient way to directly pull data from any website, even eBay.

Scraping eBay listings data can give your business a competitive edge
Scraping eBay listings data can give your business a competitive edge

Using an eBay scraper vs. the eBay API

What about using an API to get data from eBay?

If you aren't sure of the meaning of the term API, or application programming interface, first head over to what is an API?

Basically, the ideal API should let you interact with a website as if you were accessing it just like a regular user, but with all the advantages that come with computers interacting directly with each other, such as speed, accuracy, repeatability, and scalability.

eBay APIs can get you some of the information locked in eBay listings, but there is an approval process and there are call limits. If you're not in a hurry and just want to do a little casual scraping, or don't have very demanding use cases, you should be fine with the official eBay APIs.

Web scraping effectively creates an unofficial eBay API to let you extract eBay data at scale whenever you need it. If you haven't come across web scraping before, you should check out our easy-to-understand Beginner's Guide To Web Scraping. It explains everything you need to know about how it works and the advantages and disadvantages of web scraping. If you still have questions, take a look at the pros and cons of web scraping. We also have a quick guide for if you're puzzled by the difference between web scraping and web crawling.

Using web scraping to extract data from eBay means that you have all the advantages of an API, but you also have the flexibility and scalability provided by web scraping.

eBay Scraper · Apify
Unofficial eBay API to extract data from eBay based on keywords or categories. Scrape reviews, prices, product descriptions, images, location, availability, brand, and more. Download extracted data in structured format and use it in reports, spreadsheets, databases, and applications.

How web scraping data is used

Web scraping is increasingly being used in the e-commerce and retail industry to monitor prices across multiple websites in real-time, track competitors, run price comparisons, and carry out extensive market research. Want to find out more: read about the top 8 advantages of web scraping for e-commerce.

Yes, scraping is legal. You do have to understand the boundaries, but we've got you covered with a detailed assessment of the legality of web scraping: Is web scraping legal?

What structured scraped eBay data looks like

You might be wondering what you'd get if you scraped raw data with an eBay scraper. Because scraping is designed to extract structured data, an eBay dataset looks pretty organized and is usable in spreadsheets, applications, and databases right away. You'll get eBay listings with items, prices, and other data neatly displayed in JSON, CSV, XML, or whatever other structured format you need.

Here's an example, including a look at the kinds of charts you can create from the data. We looked at drone sales across different towns and cities in the US. Here's the structured data in a dataset for you to explore yourself. Note that this is just a partial dataset, as the entire drone category includes hundreds of thousands of products!

Download the dataset in JSON format. It'll look like this:

Click to download the data in JSON format
Click to download the data in JSON format

And here's the same dataset for you to download in CSV, Excel, and XML formats.

We used that data to explore the number of drones sold according to brand. DJI comes out way on top, but some of the others, such as Ultimaxx and Potensic, are so close that it would be surprising if there weren't ways for a reseller or dropshipper to nudge buyers one way or the other.

Create charts and reports from scraped eBay data
Create charts and reports from scraped eBay data

Breaking the numbers down by location, this kind of insight could be useful not only for marketers and brands, but also for town planners, airport officials, and of course businesses looking for underexplored opportunities.

Find opportunities and understand sales trends by location
Find opportunities and understand sales trends by location

Getting this dataset and creating those charts took minutes. Once extracted, the data can be used and reused as needed, and it can be extracted repeatedly - on-demand and at scale.

Already have an eBay scraper in Scrapy? Migrate it to Apify with our Apify Python client -> https://blog.apify.com/apify-python-api-client/

Step-by-step guide to scraping eBay listings

So let's get to the business of extracting data from eBay with eBay Scraper.

1. eBay Scraper runs on the Apify platform, so just sign up for free if you don't already have an Apify account. You don't need a credit card and the free plan gives you $5 in platform credits every month. Note that eBay Scraper is a premium paid actor, with top-notch maintenance and support, so you'll get a 14-day free trial, but then it will cost $50 per month to rent the scraper.

Sign up for your free Apify account
Sign up for your free Apify account

2. From apify.com, click on the Solutions tab at the top of the page, then click Apify Store. You'll be taken straight to Apify Store, which is packed with ready-made web scraping and automation tools.

Apify Store is packed with ready-made web scraping and automation tools
Apify Store is packed with ready-made web scraping and automation tools

3. On Apify Store, type "ebay" into the search bar. eBay Scraper will show up in the list and you can just click on it to get to the scraper page.

Search for eBay Scraper on Apify Store
Search for eBay Scraper on Apify Store

4. You'll be taken to the eBay Scraper page. Now just click the green "Try for free" button to kick things off and get at the scraper itself!

You can try eBay Scraper free for 14 days
You can try eBay Scraper free for 14 days

5. You're in Apify Console now. That's where you can control eBay Scraper and all other Apify tools (we call them actors). Console will start you off with a task (you can read all about Apify tasks in our extensive documentation) automatically created for you. It won't start scraping eBay until you give it some input parameters.

Apify Console is your workspace for setting up free and paid scrapers for any website
Apify Console is your workspace for setting up free and paid scrapers for any website

6. Let's use our drone example and scrape some eBay drone data. First, you need to tell the scraper what you want to scrape. So you need a start URL.

For this tutorial, we don't want to scrape an entire category. That could take a long time. So let's go to ebay.com and look through the categories until we get to the "camera drones" category. Click on the category and you'll be directed to a page. On that page, you should see the DJI brand sub-category. Let's narrow it down even further and get data about the DJI Mini 2. So click on DJI Mini 2. That's about the right amount of data for this tutorial.

The URL of the page is the category you want and you can use it as your start URL. For the DJI Mini 2, the URL is https://www.ebay.com/b/DJI-Mini-2/179697/bn_7117623239

So just copy that URL from your browser and head back to Apify Console.

Narrow down the category you want to scrape so that the run goes faster
Narrow down the category you want to scrape so that the run goes faster

7. Paste the URL into the start URLs field (you might need to delete the default input there).

Adding input parameters to eBay Scraper to scrape an eBay category
Adding input parameters to eBay Scraper to scrape an eBay category

8. Now just click the green "Run" button at the bottom of the page (or it might be "Save & Run" depending on how you changed the parameters). eBay Scraper will start running. This means that it's successfully scraping eBay. You'll see detailed output telling you how it's progressing.

This could take about 10 minutes, but, hey, even scraping a small part of eBay is a lot of data!

While you wait, you could check out how Apify helped a leading manufacturer use web scraping for price monitoring. Or go and get a cup of coffee while the bot does the work ☕🦾

eBay Scraper running and scraping eBay
eBay Scraper running and scraping eBay

9. When you come back, the scraping run should have succeeded.

Another successful scraping run for eBay Scraper
Another successful scraping run for eBay Scraper

10. And the last step is to access your data! Just click on the Dataset tab. That will give you access to all your data in multiple structured formats. You can download the data in JSON, CSV, XML, and more. You can also preview the data from the Dataset tab to make sure you've scraped the right information.

Export and download your scraped eBay data in JSON, CSV, XML, Excel, and more
Export and download your scraped eBay data in JSON, CSV, XML, Excel, and more

Other e-commerce web scrapers

Scraping eBay is just one way that e-commerce retailers, dropshippers, and brands can boost their businesses. Web scraping can turn any website into an API. Check out the e-commerce section of Apify Store for hundreds of web scrapers dedicated to extracting data from product listings.

Here's a quick list of some of our most popular e-commerce scrapers. You might also like to check out top 5 retail analytics scrapers for Black Friday.

If you want to scrape eBay, but don't want to configure and run the scraper yourself, you can also request a custom solution.



Great! Next, complete checkout for full access to Apify
Welcome back! You've successfully signed in
You've successfully subscribed to Apify
Success! Your account is fully activated, you now have access to all content
Success! Your billing info has been updated
Your billing was not updated