eBay  Scraper avatar

eBay Scraper

Pricing

from $1.20 / 1,000 results

Go to Apify Store
eBay  Scraper

eBay Scraper

Scrape eBay product listings in one run. Get titles, prices, conditions, ratings, images, and shipping details. Compare marketplace (eBay) pricing. Fast HTTP-only extraction.

Pricing

from $1.20 / 1,000 results

Rating

0.0

(0)

Developer

kane liu

kane liu

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

eBay Scraper

Scrape live eBay product listings with Patchright browser mode.

This Actor is built for people who need current eBay search results in structured form without manually opening dozens of product pages.

  • Search eBay by keyword
  • Collect titles, prices, conditions, ratings, shipping, images, and listing URLs
  • Filter by condition, Buy It Now, price range, sort order, and category
  • Run in no-proxy mode by default to reduce cost
  • Optionally enable Apify residential proxy when you want geo-matched routing

Why this Actor exists

Raw HTTP requests to eBay are often blocked. In real Apify cloud runs, the stable path was Patchright browser automation. Because residential proxy usage adds cost, the default configuration now runs:

  • eBay only
  • Patchright as the primary path
  • No proxy by default

If you need proxy routing for a specific country, you can still enable it with useApifyProxy=true and a two-letter country code such as US, GB, or DE.

What you can do with it

1. Check live market prices on eBay

Search a product and get a clean dataset of current listings.

Example input:

{
"keyword": "iphone 15",
"maxResults": 20
}

Example output item:

{
"itemId": "146637072148",
"title": "Apple iPhone 15 128GB Factory Unlocked Smartphone - Very Good",
"price": 378.37,
"currency": "USD",
"condition": "Very Good - Refurbished",
"imageUrl": "https://i.ebayimg.com/images/g/example/s-l500.webp",
"itemUrl": "https://www.ebay.com/itm/146637072148",
"rating": 4.8,
"reviewCount": 184,
"shipping": "Free shipping",
"freeShipping": true,
"listingType": "buy_it_now",
"source": "ebay",
"keyword": "iphone 15",
"scrapedAt": "2026-07-08T02:25:10Z"
}

2. Compare listing quality and condition mix

Use eBay condition filters to separate new, used, and refurbished inventory.

Example input:

{
"keyword": "dyson v15",
"condition": "refurbished",
"maxResults": 30,
"buyItNow": true
}

Typical use cases:

  • resale sourcing
  • competitor monitoring
  • pricing research
  • category scans
  • listing quality checks

3. Track price movement over time

Run the Actor on a schedule and compare the resulting datasets week over week.

Example scheduled input:

{
"keyword": "sony wh-1000xm5",
"sortBy": "price_asc",
"maxResults": 40
}

This is useful for:

  • market monitoring
  • repricing workflows
  • catalog research
  • alerting on price drops

4. Feed live eBay data into automation or AI workflows

You can run this Actor from:

  • Apify schedules
  • Make
  • Zapier
  • n8n
  • LangChain
  • MCP-connected assistants such as Claude, ChatGPT, or Cursor

Input

FieldTypeDefaultDescription
keywordstringiphone 15Search term to run on eBay.
countrystringUSTwo-letter country code used when proxy is enabled.
useApifyProxybooleanfalseEnable Apify residential proxy. Default is off to reduce cost.
maxResultsinteger60Maximum number of eBay listings to collect.
categoryIdstringnullOptional eBay category ID.
conditionstring""Optional eBay condition filter: new, refurbished, used.
buyItNowbooleanfalseCollect only Buy It Now listings.
minPricenumbernullOptional minimum price.
maxPricenumbernullOptional maximum price.
sortBystringbest_matcheBay sort mode.

Output

Each dataset item represents one eBay listing.

Main fields:

  • itemId
  • title
  • price
  • currency
  • condition
  • imageUrl
  • itemUrl
  • rating
  • reviewCount
  • shipping
  • freeShipping
  • listingType
  • source
  • keyword
  • scrapedAt

Depending on the listing, the Actor may also include fields such as:

  • isSponsored
  • acceptsOffers
  • badge
  • regularPrice

Default runtime behavior

Current default behavior is:

  • Site: eBay
  • Fetch mode: Patchright browser mode
  • Proxy: disabled

Why:

  • eBay often blocks plain HTTP scraping
  • Patchright proved to be the stable cloud path
  • disabling proxy by default avoids unnecessary residential proxy cost

Optional proxy mode

If you need country-matched routing, enable the proxy explicitly.

Example:

{
"keyword": "iphone 15",
"maxResults": 20,
"country": "US",
"useApifyProxy": true
}

When proxy mode is enabled, the Actor:

  • requests Apify RESIDENTIAL proxy
  • maps the selected country into proxy routing
  • verifies the exit geo before scraping

How to use on Apify

  1. Open the Actor on Apify.
  2. Click Try for free.
  3. Enter a search keyword.
  4. Optionally set filters such as condition, Buy It Now, price, or category.
  5. Leave proxy disabled unless you specifically want proxy routing.
  6. Run the Actor.
  7. Download the dataset as JSON, CSV, Excel, or connect it to another tool.

Example automation input

Basic low-cost run:

{
"keyword": "macbook pro m3",
"maxResults": 15
}

Proxy-enabled run:

{
"keyword": "ps5 slim",
"maxResults": 20,
"country": "US",
"useApifyProxy": true,
"buyItNow": true
}

Data source

This Actor collects live search results from eBay.

It is intended for current listing discovery and market observation, not for historical sold-price analytics.

Notes and limits

  • eBay page structure can change over time.
  • Some searches may return mixed listing quality depending on the keyword.
  • No-proxy mode is the default because it is cheaper, but your exact results can still vary by query and market.
  • If eBay becomes stricter for a given query or geography, enabling proxy may improve resilience.

Developer usage

Apify API

curl "https://api.apify.com/v2/acts/lentic_clockss~ecommerce-scraper/runs?token=YOUR_TOKEN" \
-X POST \
-H "Content-Type: application/json" \
-d '{
"keyword": "iphone 15",
"maxResults": 10
}'

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("lentic_clockss/ecommerce-scraper").call(run_input={
"keyword": "iphone 15",
"maxResults": 10,
})
items = list(client.dataset(run["defaultDatasetId"]).iterate_items())
print(items[:2])

MCP / AI assistants

Use the Actor ID:

lentic_clockss/ecommerce-scraper

Example tool input:

{
"keyword": "airpods pro",
"maxResults": 12,
"buyItNow": true
}

Summary

If you need an eBay-only scraper that is already aligned with the current cloud-tested path, this Actor is now configured for that:

  • eBay only
  • Patchright first
  • no proxy by default
  • residential proxy optional
  • structured listing output ready for export or automation