Ultimate Walmart Scraper avatar

Ultimate Walmart Scraper

Pricing

from $2.99 / 1,000 products

Go to Apify Store
Ultimate Walmart Scraper

Ultimate Walmart Scraper

This is the ultimate web scraping tool for extracting the most relevant data points from products on Walmart.com! Developed by an expert software developer, this powerful scraper is a fast and reliable tool for all your web scraping needs.

Pricing

from $2.99 / 1,000 products

Rating

0.0

(0)

Developer

w3crawler

w3crawler

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

What does Ultimate Walmart Scraper do?

Ultimate Walmart Scraper extracts public Walmart product records from Walmart Canada and Walmart US search, browse, category, listing, and product pages. It reads the structured page payloads that Walmart publishes for the page, normalizes product identity, price, currency, availability, seller, ratings, media, category, and specifications, and can enrich a bounded number of product pages. It does not log in, solve CAPTCHAs, bypass access controls, or invent values. See Walmart for the public source.

Why use Ultimate Walmart Scraper?

Use it for product research, catalog monitoring, price checks, availability snapshots, and marketplace comparison. A search URL can return multiple distinct products, while a product URL can produce a complete detail record. Results preserve the producing search URL, page number, source hostname, position, extraction method, and timestamp so records remain auditable. Apify provides API access, dataset exports, run history, scheduling, and monitoring around the Actor.

Generated searches use Walmart Canada by default because its public pages currently expose structured product data. Set market to us to generate a Walmart US search URL. Explicit startUrls always control the source and can contain either Walmart.ca or Walmart.com URLs; a challenged URL produces an explicit diagnostic instead of a false empty result. Ordinary Apify Proxy is active when enabled in proxyConfiguration, but it is not an access-control bypass.

What data can Ultimate Walmart Scraper extract?

GroupFields
IdentityproductId, name, canonical url, sku, gtin, model
Commerceprice, priceFormatted, wasPrice, unitPrice, currency, availability, seller
Contentdescription, brand, category, breadcrumbs, features, specifications
Media and deliveryimageUrl, bounded imageUrls, media, fulfillment, badges, sponsored
Detail and provenancedetailStatus, bounded reviews, reviewSummary, source, searchUrl, pageNum, position, provenance, scrapedAt

How to scrape Walmart products

  1. Open the Input tab and enter a search term or one or more public Walmart URLs.
  2. Choose ca or us for generated searches, then set maxItems and maxPages.
  3. Enable detail enrichment for a bounded number of product pages; enable public reviews only when needed.
  4. Start the Actor and inspect the dataset and OUTPUT_SUMMARY key-value record. A walmart-diagnostic record is an access, empty-page, or request diagnostic and is not a product.

How much will it cost to scrape Walmart products?

Apify bills the Actor according to the account and pricing configuration shown for the run. More source pages, product-detail requests, retries, browser/container resources, and large media or review arrays require more compute and storage. This Actor uses sequential HTTP requests, bounded response sizes, configurable pacing, and bounded retries. Keep maxItems, maxPages, maxDetailItems, and maxReviews close to the business need for predictable runs.

Input

See the input tab for the complete configuration. The important rules are:

  • query, searchTerms, search_terms, and queries generate one search URL per unique non-empty term. market defaults to ca and accepts only ca or us.
  • startUrls is an array of { "url": "..." } objects. urls, productUrls, product_urls, and url are compatibility aliases. Explicit URLs take precedence over generated terms.
  • maxItems is global across all URLs and pages (1–500). maxPages is per search/browse URL (1–10); product URLs are fetched once. The observed Walmart page query parameter is advanced between pages, with repeated/no-new pages stopping the crawl.
  • deduplicate uses the stable Walmart item ID, then canonical URL or name. includeDetails is bounded by maxDetailItems (0–50). includeReviews is bounded by maxReviews (0–20) and only applies to successful detail pages.
  • requestDelayMs (0–10,000), maxRequestRetries (0–3), and timeoutMs (5,000–120,000) are bounded developer controls. userAgent is optional and transparent. Requests are sequential.

Smoke-test input

{
"query": "wireless keyboard",
"market": "ca",
"maxItems": 3,
"maxPages": 1,
"includeDetails": true,
"maxDetailItems": 1,
"requestDelayMs": 0,
"maxRequestRetries": 0,
"timeoutMs": 30000
}

Multiple URLs and detail opt-out

{
"startUrls": [
{ "url": "https://www.walmart.ca/en/search?q=wireless+keyboard" },
{ "url": "https://www.walmart.ca/en/search?q=usb+mouse" }
],
"maxItems": 10,
"maxPages": 2,
"deduplicate": true,
"includeDetails": false,
"includeReviews": false
}

Product detail with public reviews

{
"startUrls": [
{
"url": "https://www.walmart.ca/en/ip/example-wireless-keyboard/EXAMPLE123"
}
],
"maxItems": 1,
"includeDetails": true,
"maxDetailItems": 1,
"includeReviews": true,
"maxReviews": 3
}

Output

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

Rich product record

{
"recordType": "walmart-product",
"status": "success",
"dataAvailable": true,
"source": "walmart.ca",
"productId": "EXAMPLE123",
"name": "Example wireless keyboard",
"url": "https://www.walmart.ca/en/ip/example-wireless-keyboard/EXAMPLE123",
"price": 29.99,
"currency": "CAD",
"availability": "In stock",
"seller": "Walmart",
"detailEnriched": true,
"detailStatus": "success",
"searchUrl": "https://www.walmart.ca/en/search?q=wireless+keyboard",
"pageNum": 1,
"extractionMethod": "embedded_json",
"scrapedAt": "2026-09-08T12:00:00.000Z"
}

Run summary

{
"status": "SUCCEEDED",
"recordCount": 3,
"itemCount": 3,
"productCount": 3,
"diagnosticCount": 0,
"blockedCount": 0,
"detailRequestedCount": 1,
"detailSuccessCount": 1,
"completedAt": "2026-09-08T12:00:00.000Z"
}

Diagnostic record

{
"recordType": "walmart-diagnostic",
"status": "error",
"dataAvailable": false,
"accessStatus": "blocked",
"source": "walmart.com",
"errorCode": "ACCESS_BOUNDARY",
"error": "Walmart returned an access challenge instead of public product data.",
"url": "https://www.walmart.com/search?q=wireless+keyboard",
"scrapedAt": "2026-09-08T12:00:00.000Z"
}

Tips and advanced options

Start with one search URL, one page, and a small maxItems. Use multiple pages only when the first page cannot satisfy the requested limit; the global item limit is applied across all sources. Detail enrichment costs an additional public request per selected item, and review/media arrays are bounded. A detail timeout or access challenge retains the usable base search record with detailStatus: "failed" and a stable error code. Set a respectful delay for larger runs.

FAQ, support, and responsible use

If the dataset contains only diagnostics, inspect accessStatus, errorCode, the final URL, and OUTPUT_SUMMARY; an access boundary is not the same as zero matches. Do not submit credentials, cookies, or private URLs. For support, use the Actor Issues tab or API tab and include the run ID, sanitized input shape, and summary counts.

This Actor is not affiliated with Walmart. It extracts only public page data and does not access private user information, authenticate, solve CAPTCHAs, or bypass access controls. Users must follow Walmart’s terms, robots guidance, rate limits, applicable law, and privacy obligations. Public reviews may contain personal data; use them only with a legitimate purpose and seek qualified legal advice when unsure.