Yahoo Shopping Search Scraper avatar

Yahoo Shopping Search Scraper

Pricing

from $0.01 / 1,000 results

Go to Apify Store
Yahoo Shopping Search Scraper

Yahoo Shopping Search Scraper

Extract product listings, prices, seller info, and descriptions from Yahoo Shopping. Supports price filtering, sorting, category filtering, merchant filtering, and pagination. Returns structured JSON data for market research and price monitoring.

Pricing

from $0.01 / 1,000 results

Rating

5.0

(3)

Developer

John

John

Maintained by Community

Actor stats

5

Bookmarked

22

Total users

3

Monthly active users

14 hours ago

Last modified

Share

Yahoo Shopping Scraper - Products, Prices & Sellers

Scrape Yahoo Shopping product listings with prices, sellers, images, and filters. The dedicated Apify Actor for Yahoo Shopping search. Supports price ranges, sorting, category filters, merchant filters, and pagination. Pay per page processed - no monthly subscription.

Use it for price monitoring, market research, competitive analysis, product discovery, or feeding structured product data into your e-commerce stack.


Use via the Apify MCP server

This Actor is discoverable through the Apify MCP server. Connect Claude, Cursor, VS Code, or any MCP-compatible client to https://mcp.apify.com and ask your agent to "scrape Yahoo Shopping for [your query]". The Actor will be registered as a tool and called automatically.


Python Quick Start Example

A complete Python example using the Apify client is available on GitHub:

github.com/johnisanerd/Apify-Yahoo-Shopping-Scraper

Clone the repo, run uv sync, add your API key, and you are scraping Yahoo Shopping in minutes.


What this Actor returns

FieldDescription
Product IDUnique identifier for each listing
Product titleFull product name
PriceCurrent price (number, USD)
Sale priceDiscounted price when on sale
SellerMerchant name
Product linkDirect URL to the product page
ThumbnailProduct image URL
PositionPosition in the search results
FiltersAvailable category and filter options returned by Yahoo Shopping
Search metadataTotal results, total pages, per-page counts

All results are delivered as structured JSON, ready for export to CSV, Excel, or direct ingestion by your application.


Key features

  • Price filtering - Set min_price and max_price to constrain results to a USD range.
  • Sorting - Order by price, relevancy, popularity, or discountPercentage in ascending or descending order.
  • Category filtering - Pass category_attr_values to filter by category attributes (gender, age, etc.).
  • Merchant filtering - Pass a comma-separated list of merchants to restrict results to specific sellers.
  • Flexible pagination - Use offset-based (start) or page-based (page) pagination, with max_pages to cap the run.
  • Per-page billing - Each page is pushed as a separate dataset item for transparent, page-level costs.
  • MCP-ready - Discoverable and callable through the Apify MCP server for agentic workflows.

Usage examples

{
"query": "coffee",
"max_pages": 1
}

Price-filtered search with sorting

{
"query": "laptop",
"min_price": "500",
"max_price": "1500",
"sort_by": "price",
"order_by": "ASC",
"max_pages": 1
}
{
"query": "shoes",
"category_attr_values": "gender_female,age_adult",
"max_pages": 1
}
{
"query": "headphones",
"sort_by": "popularity",
"order_by": "DESC",
"max_pages": 1
}

Pagination with page number

{
"query": "coffee",
"page": 2,
"limit": 60,
"max_pages": 2
}

Pagination with start offset

{
"query": "laptop",
"start": 60,
"limit": 60,
"max_pages": 2
}
{
"query": "smartphone",
"merchants": "merchant_id_1,merchant_id_2",
"max_pages": 1
}

All parameters together

{
"query": "coffee maker",
"min_price": "20",
"max_price": "150",
"sort_by": "discountPercentage",
"order_by": "DESC",
"category_attr_values": "kitchen_appliances,coffee_brewers",
"merchants": "amazon,walmart",
"start": 0,
"limit": 60,
"page": 1,
"max_pages": 3,
"output_file": "coffee_maker_results.json"
}

Input parameters

ParameterTypeRequiredDefaultDescription
querystringyes-Search term for Yahoo Shopping products (e.g., "coffee", "laptop", "headphones").
min_pricestringno"0.00"Minimum price filter in USD. Must match ^\d+(\.\d+)?$. "0.00" means no minimum.
max_pricestringno"0.00"Maximum price filter in USD. Must match ^\d+(\.\d+)?$. "0.00" means no maximum.
sort_bystringnonullSort field. One of "price", "relevancy", "popularity", "discountPercentage".
order_bystringnonullSort direction. "ASC" or "DESC".
category_attr_valuesstringnonullComma-separated category attribute filters (e.g., "gender_female,age_adult").
merchantsstringnonullComma-separated merchant IDs to restrict results.
startintegerno0Offset-based pagination position. Cannot be used with page.
limitintegerno60Results per page. Maximum 60.
pageintegernonullPage number (1-indexed). Cannot be used with start.
max_pagesintegerno1Maximum pages to fetch. 0 = no limit.
output_filestringnonullOptional filename for local result export. Auto-generated when omitted.

Output format

Each page of results is pushed as a separate dataset item with the structure below.

{
"search_parameters": {
"query": "coffee",
"min_price": null,
"max_price": null,
"sort_by": null,
"sort_by_description": null,
"order_by": null,
"order_by_description": null,
"category_attr_values": null,
"merchants": null,
"limit": 60,
"start": 0,
"page": null
},
"search_metadata": {
"total_results": 387134,
"total_pages": 6453,
"shopping_results_count": 60,
"pages_processed": 1,
"max_pages_set": 1,
"pagination_limit_reached": false
},
"search_timestamp": "2026-05-11T10:30:00.123456",
"page_number": 1,
"shopping_results": [
{
"position": 1,
"product_id": "123456789",
"link": "https://shopping.yahoo.com/product/123456789",
"title": "Premium Coffee Beans - 1lb Bag",
"seller": "Coffee Store",
"price": 24.99,
"sale_price": 19.99,
"thumbnail": "https://example.com/image.jpg"
}
],
"filters": [
{
"key": "category",
"values": [
{
"id": "food_beverages",
"name": "Food & Beverages"
}
]
}
]
}

Output field reference

  • search_parameters - The configuration used for the search, echoed back.
  • search_metadata - Totals, pages processed, and whether the pagination cap was hit.
  • search_timestamp - ISO 8601 timestamp of the search.
  • page_number - Current page number (1-indexed).
  • shopping_results - Array of product listings (see fields below).
  • filters - Available filter options. Typically returned on the first page only.

Each shopping_results item contains: position, product_id, link, title, seller, price, sale_price, thumbnail.


Pricing

This Actor uses pay-per-event billing. You only pay for what you run.

  • Setup fee: charged once per Actor run (covers instance start and provisioning). Tiered discounts apply based on your Apify plan.
  • Page processed: $0.02 per page of shopping results processed. Each page is pushed to the dataset as a separate item for transparent billing.
  • Per result: $0.00001 per dataset item stored.

You control your cost by setting max_pages. The Actor performs a budget check before running and exits gracefully if your run limit is too low to complete the requested work.


Use cases

  • Price monitoring - Track product prices over time for specific items or categories.
  • Market research - Analyze product availability, pricing trends, and seller distribution.
  • Competitive analysis - Compare prices across merchants.
  • Product discovery - Find products matching specific criteria (price, category, merchant).
  • E-commerce integration - Build product feeds and inventory pipelines.
  • Price comparison tools - Power consumer-facing price comparison apps.
  • AI agent workflows - Let an LLM call this Actor via Apify MCP to enrich product reasoning with live shopping data.

Frequently asked questions

How do I get started?

Provide a query parameter with your search term and click Run. The Actor returns structured JSON results in the default dataset, viewable as JSON, CSV, or Excel.

Can I filter results by price range?

Yes. Use min_price and max_price. Both accept string values matching the regex ^\d+(\.\d+)?$. Set either to "0.00" to remove that bound.

What sorting options are available?

sort_by accepts "price", "relevancy", "popularity", or "discountPercentage". Pair with order_by set to "ASC" or "DESC".

How does pagination work?

Two modes:

  • Offset-based: set start to the starting position.
  • Page-based: set page to the 1-indexed page number.

Use one or the other - not both in the same call.

Can I filter by specific merchants?

Yes. Pass comma-separated merchant IDs in merchants.

What is the maximum number of results per page?

60 results per page (also the default).

How many pages can I scrape?

As many as you want. Set max_pages to 0 for no limit, or a specific number to cap the run. Each page is billed separately.

What data format does the Actor return?

Structured JSON pushed to the Apify dataset. Export as JSON, CSV, or Excel from the console, or pull via the Apify API.

Is the Actor callable from an AI agent?

Yes. The Actor is registered with the Apify MCP server, so any MCP-compatible client (Claude, Cursor, VS Code, Cline, Windsurf, etc.) can discover and call it.

How do I avoid surprise costs?

Set max_pages to a small number for testing. The Actor performs a budget check before running and will exit gracefully if your run limit is too low.


Technical notes

  • Results are sorted by Yahoo Shopping's default relevancy when sort_by is omitted.
  • page and start are mutually exclusive - pick one mode of pagination.
  • Maximum limit per page is 60.
  • Filters are typically returned on the first page only.
  • All prices are USD.
  • Setting max_pages to 0 fetches all available pages.
  • Output is automatically cleaned and validated for JSON serialization compliance.
  • Each page is pushed as a separate dataset item for accurate per-page billing.
  • min_price / max_price must be provided as strings (e.g., "50" or "99.99") and validated against ^\d+(\.\d+)?$.
  • Setting min_price or max_price to "0.00" removes that bound.

Ready to collect Yahoo Shopping data?

Plug in a search query, set your pagination, and you have a clean, structured product feed in minutes. Whether you are building a price comparison tool, monitoring competitors, or feeding an AI agent with live shopping data, this Actor handles the discovery, parsing, and per-page billing.

Last Updated: 2026.05.19