Wholefoodsmarket Product Search Scraper avatar

Wholefoodsmarket Product Search Scraper

Pricing

from $2.00 / 1,000 results

Go to Apify Store
Wholefoodsmarket Product Search Scraper

Wholefoodsmarket Product Search Scraper

Scrape Whole Foods Market search results and extract 25+ product fields including brand, nutrition facts, pricing, availability, and dietary badges. Perfect for price monitoring, market research, and product aggregation in the organic grocery segment.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Stealth mode

Stealth mode

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Whole Foods Market Product Search Scraper: Extract Organic Grocery Data at Scale


What Is Whole Foods Market?

Whole Foods Market is one of North America's largest premium organic and natural grocery retailers, with thousands of locations and an extensive e-commerce platform. The company's website lists hundreds of thousands of products across categories like produce, meat, dairy, prepared foods, and specialty items. Extracting product data manually is labor-intensive — the Whole Foods Market Product Search Scraper automates collection of detailed product information from search results, enabling competitive analysis, pricing research, and market intelligence.


Overview

The Whole Foods Product Search Scraper extracts comprehensive product data from Whole Foods Market search result pages. It supports two scraping modes:

  1. URL-based scraping — Paste specific search result URLs directly
  2. Keyword-based scraping — Define search criteria (keyword, sort order, price range) and auto-generate URLs

Key features include:

  • Up to 200 items per search result
  • Configurable sorting (relevance, price, newest, best sellers)
  • Price range filtering (under $10 to $50+)
  • Resilient error handling via ignore_url_failures
  • Rich product metadata across 25+ fields

Ideal for price monitoring, competitive research, product aggregators, and market analysis in the organic/natural foods segment.


Input Format

The scraper accepts configuration in two modes:

Mode 1: Scrape by URLs

{
"urls": [
"https://www.wholefoodsmarket.com/grocery/search?k=meat&s=price-desc-rank&rh=p_72%3A1248897011%2Cp_n_deal_type%3A23566065011%2Cp_36%3A3000-5000"
],
"max_items_per_url": 200,
"ignore_url_failures": true
}
FieldDescription
urlsDirect links to Whole Foods search result pages. Paste your custom-filtered URLs here — they preserve all price, category, and sorting parameters.
max_items_per_urlMaximum products to extract per URL (e.g., 200).
ignore_url_failuresIf true, skips failed URLs instead of stopping the entire run.

Mode 2: Scrape by Search Filters

{
"keyword": "meat",
"sort_by": "price-desc-rank",
"price_range": "3000-5000",
"max_items_per_url": 200
}
FieldOptionsDescription
keywordAny product nameSearch term (e.g., "meat", "organic cheese", "gluten-free pasta")
sort_byrelevanceblender | price-asc-rank | price-desc-rank | date-desc-rank | get-it-fast-rank | most-purchased-rank | low-prices-rank | exact-aware-popularity-rankRelevance (default), Price: Low to High, Price: High to Low, Newest Arrivals, Get it fast, Most purchased, Low prices, Best Sellers
price_range-1000 | 1000-2000 | 2000-3000 | 3000-5000 | 5000-Under $10, $10–$20, $20–$30, $30–$50, $50 & Above
max_items_per_urlIntegerMaximum items per search result page

Tip: Use Mode 1 (URLs) when you have pre-built filter URLs; use Mode 2 (filters) for simple keyword searches. When using Mode 2, leave the URLs array empty.


Output Format

Sample output

{
"brand_name": "ORGANIC RANCHER",
"name": "Organic Rancher, Organic Ground Beef 93% Lean/7% Fat, 100% Grass Fed & Grass Finished, USDA Organic, Pasture Raised Free Range, 16 oz",
"asin": "B09439SKW3",
"program_type": "GROCERY",
"description": "From pasture to plate, Organic Rancher ensures that every product upholds the highest standards of quality, flavor, and nutrition your body deserves.",
"about": [
"USDA Certified Organic Beef: Organic Rancher ground beef comes from cattle raised on certified organic pastures with lifetime traceability. Free from antibiotics, added hormones, synthetic chemicals, and GMOs",
"100% Grass Fed & Grass Finished: Our animals are raised entirely on open, grassy pastures and are never confined to feedlots. G.A.P. Step 4 Animal Welfare Certified with annual independent audits. Vegetarian fed, no animal by-products",
"93/7 Lean Ground Beef: This lean grind is perfect for tacos, meatballs, chili, meat sauce, stuffed peppers, and any recipe where you want great beef flavor with less fat. One pound of premium organic ground beef per package",
"Available Exclusively at Whole Foods Market: Organic Rancher follows responsible farming practices that are kind to animals and kind to the earth"
],
"snap_ebt": "SNAP EBT eligible",
"product_images": [
"https://m.media-amazon.com/images/I/51RI18TBBrL.jpg",
"https://m.media-amazon.com/images/I/51KZgdDtTmL.jpg",
"https://m.media-amazon.com/images/I/51RI18TBBrL.jpg"
],
"availability": "IN_STOCK",
"ingredients": null,
"pdp_type": "STANDARD",
"reheating_tag": null,
"reheating_instructions": null,
"variations_list": null,
"bundle_details": null,
"offer_details": {
"price": {
"currency_code": "USD",
"price_amount": 11.49,
"basis_price_amount": null,
"savings": {
"currency_code": null,
"savings_amount": null,
"percent_savings": null
},
"prime_benefit": {
"is_applied": null,
"text": null,
"currency_code": null,
"price_amount": null,
"savings_amount": null
}
},
"unit_price": {
"base_unit": "lb",
"currency_code": "USD",
"price_amount": 11.49
},
"offer_listing_id": "byC7NpK146hTHLSMjSpz%2FEyUL%2F%2FLdktjovGVxOdSYYcl4tvsyW2%2F%2FcqIxHOyFq4VC7%2Ff64RMj99OhHWF8t6GjZTVq0DB9T9SqugqEpTtE9PKwXzVjWVfz%2BOX7m1zb9wviHPaDGJzkk667elV98IWFxlywSouTR5ddiRmEFhPC%2FQmoG1J4D5foNd1MnCsWPMZ",
"max_order_quantity": 34,
"is_max_quantity_restricted": true
},
"nutrition_facts": {
"calories_amount": "170",
"servings_per_container": "4 servings per container",
"serving_size": "4 OZ (112g)",
"macronutrients": [
{
"name": "Total Fat",
"amount": "8g",
"percent": "12%",
"level": "TOP"
},
{
"name": "Saturated Fat",
"amount": "3.5g",
"percent": "18%",
"level": "SUB"
},
{
"name": "Trans Fat",
"amount": "0g",
"percent": "",
"level": "SUB"
},
{
"name": "Sodium",
"amount": "60mg",
"percent": "",
"level": "TOP"
},
{
"name": "Total Carbohydrate",
"amount": "0g",
"percent": "0%",
"level": "TOP"
},
{
"name": "Dietary Fiber",
"amount": "0g",
"percent": "0%",
"level": "SUB"
},
{
"name": "Sugars",
"amount": "0g",
"percent": "",
"level": "SUB"
},
{
"name": "Protein",
"amount": "25g",
"percent": "",
"level": "TOP"
}
],
"vitamins_and_minerals": []
},
"variable_unit_of_measure": {
"pricing_uom": {
"dimension": "COUNT",
"unit": "UNITS"
},
"selling_uom": {
"dimension": "COUNT",
"unit": "UNITS"
},
"selector_item_list": [
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 11.49
},
"selector_selling_quantity_string": "1",
"selector_selling_quantity_value": 1
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 22.98
},
"selector_selling_quantity_string": "2",
"selector_selling_quantity_value": 2
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 34.47
},
"selector_selling_quantity_string": "3",
"selector_selling_quantity_value": 3
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 45.96
},
"selector_selling_quantity_string": "4",
"selector_selling_quantity_value": 4
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 57.45
},
"selector_selling_quantity_string": "5",
"selector_selling_quantity_value": 5
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 68.94
},
"selector_selling_quantity_string": "6",
"selector_selling_quantity_value": 6
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 80.43
},
"selector_selling_quantity_string": "7",
"selector_selling_quantity_value": 7
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 91.92
},
"selector_selling_quantity_string": "8",
"selector_selling_quantity_value": 8
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 103.41
},
"selector_selling_quantity_string": "9",
"selector_selling_quantity_value": 9
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 114.9
},
"selector_selling_quantity_string": "10",
"selector_selling_quantity_value": 10
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 126.39
},
"selector_selling_quantity_string": "11",
"selector_selling_quantity_value": 11
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 137.88
},
"selector_selling_quantity_string": "12",
"selector_selling_quantity_value": 12
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 149.37
},
"selector_selling_quantity_string": "13",
"selector_selling_quantity_value": 13
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 160.86
},
"selector_selling_quantity_string": "14",
"selector_selling_quantity_value": 14
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 172.35
},
"selector_selling_quantity_string": "15",
"selector_selling_quantity_value": 15
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 183.84
},
"selector_selling_quantity_string": "16",
"selector_selling_quantity_value": 16
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 195.33
},
"selector_selling_quantity_string": "17",
"selector_selling_quantity_value": 17
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 206.82
},
"selector_selling_quantity_string": "18",
"selector_selling_quantity_value": 18
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 218.31
},
"selector_selling_quantity_string": "19",
"selector_selling_quantity_value": 19
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 229.8
},
"selector_selling_quantity_string": "20",
"selector_selling_quantity_value": 20
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 241.29
},
"selector_selling_quantity_string": "21",
"selector_selling_quantity_value": 21
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 252.78
},
"selector_selling_quantity_string": "22",
"selector_selling_quantity_value": 22
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 264.27
},
"selector_selling_quantity_string": "23",
"selector_selling_quantity_value": 23
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 275.76
},
"selector_selling_quantity_string": "24",
"selector_selling_quantity_value": 24
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 287.25
},
"selector_selling_quantity_string": "25",
"selector_selling_quantity_value": 25
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 298.74
},
"selector_selling_quantity_string": "26",
"selector_selling_quantity_value": 26
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 310.23
},
"selector_selling_quantity_string": "27",
"selector_selling_quantity_value": 27
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 321.72
},
"selector_selling_quantity_string": "28",
"selector_selling_quantity_value": 28
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 333.21
},
"selector_selling_quantity_string": "29",
"selector_selling_quantity_value": 29
},
{
"selector_price": {
"base_unit": null,
"currency_code": "USD",
"price_amount": 344.7
},
"selector_selling_quantity_string": "30",
"selector_selling_quantity_value": 30
}
]
},
"cooking_tag": null,
"cta_tag": "UNRECOGNIZED_SIGN_IN",
"seasonal_holiday_badge": null,
"past_interactions_badge": null,
"best_seller_badge": null,
"diet_types": [
"paleo"
],
"delivery_promise_html": "<div data-cy=\"delivery-block\" class=\"a-section a-spacing-none a-padding-none udm-delivery-block\"><div class=\"a-row a-size-small a-color-base udm-primary-delivery-message\"><div class=\"a-column a-span12\">$9.95 delivery <span id=\"WVCRIAFWG\" class=\"a-text-bold\">Today 1 PM - 3 PM</span> with Prime</div></div></div>",
"category": {
"product_type": "MEAT",
"gl_product_group_symbol": "gl_fresh_perishable",
"display_name": "Grocery"
},
"customizability": null,
"from_url": "https://www.wholefoodsmarket.com/grocery/search?k=meat"
}

Each product record returns 25+ fields of structured data:

Core Product Identity

FieldMeaning
Brand NameThe manufacturer or brand (e.g., "Organic Valley", "Grass-Fed Beef Co.")
NameProduct title as displayed on the listing (e.g., "Grass-Fed Ground Beef, 85/15")
ASINAmazon Standard Identification Number — unique product identifier across Amazon/Whole Foods platforms
PDP TypeProduct Detail Page type (indicates if it's a standard item, bundle, variable product, or special category)
CategoryProduct classification (e.g., "Meat & Seafood", "Produce", "Dairy")

Availability & Fulfillment

FieldMeaning
AvailabilityCurrent stock status (in stock, limited availability, out of stock, pre-order)
Delivery Promise HTMLHTML-formatted delivery estimate (e.g., "Whole Foods delivery", "Get it by Friday")
Variable Unit of MeasureUnit of sale (lb, oz, count, package, etc.) — important for price comparison

Product Information

FieldMeaning
DescriptionFull product description, benefits, and use cases
AboutAdditional narrative or brand story about the product
IngredientsComplete ingredient list (critical for dietary filtering)
Nutrition FactsStandardized nutritional information (calories, macros, allergens)
Diet TypesDietary badges (organic, vegan, gluten-free, keto, non-GMO, etc.)

Special Tags & Badges

FieldMeaning
Seasonal Holiday BadgeFlag if product is seasonal (e.g., "Holiday Special")
Past Interactions BadgeIndicates if customer has previously viewed or purchased
Best Seller BadgeHighlights top-selling items in the category
SNAP EBTWhether the product qualifies for SNAP/EBT eligibility
Cooking TagPreparation instructions or cooking method hints
Reheating TagIf applicable, indicates whether product requires reheating
Reheating InstructionsSpecific reheating guidance (microwave, oven, stovetop)

Product Variants & Bundles

FieldMeaning
Variations ListAvailable size/flavor/option variants (e.g., sizes: 1 lb, 2 lb, 5 lb)
Bundle DetailsIf product is part of a bundle or multi-pack, details on component items
Offer DetailsPromotions, discounts, or loyalty program information (e.g., "Prime Member Exclusive", "$5 off")

Media & Display

FieldMeaning
Product ImagesURLs to product photography (primary and gallery images)
CustomizabilityWhether the product can be customized (e.g., deli cuts, special packaging)

Unique Identifiers

FieldMeaning
Program TypeSpecial program affiliation (e.g., "Whole Foods 365", "Local Producer")

How to Use

Method 1: Direct URL Scraping

  1. Go to wholefoodsmarket.com and search for your desired products (e.g., "organic beef")
  2. Apply filters: price range, dietary attributes, sort order
  3. Copy the full URL from your browser address bar
  4. Paste URL(s) into the urls array
  5. Set max_items_per_url (recommend 200 for comprehensive results)
  6. Run the scraper

Method 2: Keyword-Based Scraping

  1. Enter a product keyword (e.g., "chicken", "dairy-free milk")
  2. Select a sort_by option (e.g., "price-desc-rank" for highest to lowest)
  3. Choose a price_range (e.g., "$30–$50")
  4. Set max_items_per_url to your desired limit
  5. Run the scraper — it will automatically generate and search URLs

Best practices:

  • For bulk runs, set ignore_url_failures: true to avoid interruptions
  • Use keyword mode for exploratory research; use URL mode for precise, repeatable searches
  • Monitor first-run performance with a small max_items_per_url (e.g., 20) before scaling to 200

Use Cases & Business Value

  • Price monitoring — Track competitor pricing across organic/premium grocery segments
  • Market research — Analyze product trends, dietary preferences, and premium brand positioning
  • Private label analysis — Compare Whole Foods house brands (365, Everyday Essentials) against national brands
  • Supply chain intelligence — Identify local producer partnerships and sourcing information
  • Product aggregators — Feed Whole Foods inventory into multi-retailer price comparison tools
  • Content creation — Gather product data for recipe blogs, nutrition databases, or food media
  • Inventory forecasting — Track product availability and seasonal trends for purchasing decisions

The Whole Foods Product Search Scraper eliminates manual browsing and copy-paste work, delivering clean, structured product intelligence ready for analysis in spreadsheets, databases, or BI platforms.


Conclusion

The Whole Foods Market Product Search Scraper is an efficient solution for accessing premium organic product data at scale. With flexible input modes, rich 25+ field output, and robust error handling, it accelerates competitive research, pricing analysis, and market intelligence in the natural foods space. Start scraping today and unlock insights that inform pricing strategy, product curation, and consumer trend analysis.