
TikTok Shop Scraper
scrape.ly/store/shelfbright/tiktok-shop-scraperE-commerceSocial media
1 monthly user

Scrape Walmart.com products by keyword, category, search or product URL: price, was-price, rating, review count, seller, availability, brand, images, specifications, description and variants. Fast HTTP scraping, no login.
Scrape Walmart.com products by search keyword or by search, category, shop or product URL. Every result carries the price, was-price, rating, review count, seller, stock status, brand, all images, specifications, description and variants, read straight from Walmart's own page data. No login, no browser extension, no API key; export to JSON, CSV or Excel.
price, wasPrice, images, specifications and description./browse/, /cp/), shop and product (/ip/) URLs.| Field | What it does |
|---|---|
search | Search keywords, one per line. Each one is searched separately. |
startUrls | Walmart search, category (/browse/, /cp/), shop, product (/ip/) or reviews URLs. |
maxItems | Total results to save across all inputs (0 = no limit). |
endPage | Last results page per search or category (40 products per page). |
sort, minPrice, maxPrice | Sort order and price range for search and category results. |
scrapeProductDetails | On (default): open every product page for the full record. Off: search-result data only. |
includeReviews, onlyReviews, maxReviews | Add reviews to each product, or save one row per review. |
proxyConfiguration | US datacenter addresses by default; switches to residential by itself if needed. |
{
"search": "air fryer",
"startUrls": [
{ "url": "https://www.walmart.com/browse/home/kitchen-appliances/4044_90548" },
{ "url": "https://www.walmart.com/ip/439625664" }
],
"maxItems": 20,
"sort": "best_seller",
"maxPrice": 150
}
Each product row holds Walmart's full product object (the same fields Walmart's product page uses) plus these flat fields first:
| Field | Example |
|---|---|
url | https://www.walmart.com/ip/.../439625664 |
name | Product title |
usItemId | Walmart item number |
price, wasPrice, currency | 26, 28.89, USD |
rating, reviewCount | 4.4, 820 |
brand, seller, availability | NELEUS, Neleus, In stock |
images, mainImage | All image URLs |
specifications, highlights | [{"name": "Fabric content", "value": "100% Polyester"}] |
description | Long description as plain text |
variantOptions | Every variant with its attributes, price and stock |
categoryPath | Clothing / Mens Clothing / ... |
upc, model, manufacturerProductId, priceInfo, fulfillmentOptions, returnPolicy, idml, reviews | Raw Walmart data |
[
{
"url": "https://www.walmart.com/ip/NELEUS-Mens-Dry-Fit-Mesh-Athletic-Shirts-3-Pack-Black-Gray-Olive-Green-US-Size-M/439625664",
"name": "NELEUS Mens Dry Fit Mesh Athletic Shirts 3 Pack,Black+Gray+Olive Green,US Size M",
"usItemId": "439625664",
"brand": "NELEUS",
"price": 26,
"wasPrice": 28.89,
"currency": "USD",
"rating": 4.4,
"reviewCount": 820,
"seller": "Neleus",
"availability": "In stock",
"mainImage": "https://i5.walmartimages.com/seo/NELEUS-Mens-Dry-Fit-Mesh-Athletic-Shirts-3-Pack-Black-Gray-Olive-Green-US-Size-M_eca71e52-eca8-4681-a3f9-0a95008aa5f8.90fdf1d433ccc3849acf6107d1a09b2f.jpeg",
"categoryPath": "Clothing / Mens Clothing / Mens Workout Clothing / Mens Workout Shirts",
"specifications": [
{ "name": "Count per pack", "value": "3" },
{ "name": "Fabric content", "value": "100% Polyester" }
],
"description": "Mesh fabric has excellent breathability, can provide you with targeted ventilation and two-way air circulation...",
"variantOptions": [
{
"productId": "499465E6DEKP",
"usItemId": "439625664",
"attributes": { "Color": "33# 3Pack:Black+Gray+Olive Green", "Clothing Size": "M" },
"price": 26,
"wasPrice": 28.89,
"availabilityStatus": "IN_STOCK"
}
],
"upc": "682604164281",
"model": "5033#",
"priceInfo": { "...": "..." },
"idml": { "...": "..." },
"reviews": { "...": "..." }
}
]
With Open every product page switched off, rows are lighter: usItemId, name, url, price, wasPrice, rating, reviewCount, brand, seller, availability, mainImage, shortDescription, categoryPath, isSponsored and the position in the results.
You pay $2.00 per 1,000 results ($0.002 per product, or per review in reviews-only mode). Nothing is charged for products that fail to load or no longer exist.
Platform usage (compute and proxy traffic) is billed on top at the normal rates. Measured on a 1,000-product run with full product pages: usage was $0.125 (about 0.12 GB of datacenter proxy traffic plus about 6 minutes of compute at 256 MB), so 1,000 full products ≈ $2.13 in total. With product pages switched off, 1,000 search results used about $0.02 of usage.
Set a maximum charge on the run if you want a hard cap; the actor stops cleanly when it is reached.
Is it legal to scrape Walmart? The actor reads public product pages that anyone can open without an account. It does not log in or touch personal data. Check Walmart's terms and the laws that apply to you before using the data.
Do I need a Walmart account or my own proxy? No. US datacenter proxy addresses are included; if Walmart's bot check keeps appearing on them, the run moves to residential addresses by itself.
How many results can I get? Walmart shows at most 25 pages (about 1,000 products) per search or category. To go beyond that, split the job into narrower keywords, categories or price ranges; duplicates across them are removed.
Why are some fields empty? Walmart only fills what the seller provides. For example wasPrice is empty when there is no discount, and specifications can be short for marketplace items.
Prices differ from what I see in my browser. Why? Walmart prices and stock can depend on the store and ZIP code. The actor sees the default online location Walmart picks for the request.
Can I schedule it or use the API? Yes. Save a task, schedule it, and read results from the dataset API or connect a webhook.
Every field below can be set in the run form, passed through the API, or saved as a task. Unset fields fall back to the defaults shown.
searchstringOptionalSearch keywords
What you would type into Walmart's search box. One keyword per line; each one is searched separately.
startUrlsarrayOptionalWalmart URLs
Walmart.com search, category (/browse/ or /cp/) or shop URLs, or product (/ip/) URLs. Filters you set on Walmart stay in the URL and are kept. A reviews URL (/reviews/product/...) returns that product's reviews.
maxItemsintegerOptionaldefault 20Maximum results
Stop after this many results in total across all keywords and URLs. 0 means no limit (Walmart shows at most 25 pages, about 1,000 products, per search or category).
endPageintegerOptionalLast page
Stop each search or category after this results page (40 products per page). Empty means every page.
sortenumOptionalSort by
Order of search and category results. Leave empty to keep the order in your URL (or Walmart's best match).
minPriceintegerOptionalMinimum price (USD)
Only products at or above this price (search and category results).
maxPriceintegerOptionalMaximum price (USD)
Only products at or below this price (search and category results).
scrapeProductDetailsbooleanOptionaldefault trueOpen every product page
On: full product data (specifications, description, all images, variants, seller details). Off: only what the search results show (name, price, rating, seller, image), which is faster and uses less traffic.
includeReviewsbooleanOptionaldefault falseInclude reviews
Add customer reviews to each product (in reviews.customerReviews), up to the number below.
onlyReviewsbooleanOptionaldefault falseOnly reviews
Save one row per review instead of product rows. Each review counts as one result.
maxReviewsintegerOptionaldefault 20Reviews per product
Most reviews to collect per product (10 per Walmart reviews page). 0 means all. Reviews added to a product row stop at 2,000, because they are held in memory until that row is saved; one row per review has no cap.
maxConcurrencyintegerOptionaldefault 10Parallel requests
How many pages are loaded at the same time.
proxyConfigurationobjectOptionaldefault {"useScrapelyProxy":true,"scrapelyProxyGroups":["DATACENTER…Proxy configuration
US datacenter addresses are the default. If Walmart keeps showing its bot check on them, the run switches to residential addresses by itself.
Every run writes its results to a dataset. Preview it in the dashboard, then export it or read it through the API.
| Field | Type | Description |
|---|---|---|
| mainImage | any | Image |
| name | any | Name |
| price | any | Price ($) |
| wasPrice | any | Was ($) |
| rating | any | Rating |
| reviewCount | any | Reviews |
| brand | any | Brand |
| seller | any | Seller |
| availability | any | Availability |
| categoryPath | any | Category |
| usItemId | any | Item ID |
| url | any | URL |
You pay for the events the actor reports, such as each result or page it produces. Platform usage is included in the event prices.
| Event | Charged when | Price |
|---|---|---|
| Result | One Walmart product (or one review in reviews-only mode) saved to the dataset. | $0.002 |
Run this actor from your own code. Swap in your API token and the examples work as-is.
import { ScrapelyClient } from 'scrapely-client'
const client = new ScrapelyClient({ token: process.env.SCRAPELY_TOKEN })
// Start the actor and wait for the run to finish.
const run = await client.actor('shelfbright/walmart-scraper').call({
"search": "air fryer",
"startUrls": [
{
"url": "https://www.walmart.com/browse/home/kitchen-appliances/4044_90548"
},
{
"url": "https://www.walmart.com/ip/439625664"
}
],
"maxItems": 20,
"proxyConfiguration": {
"useScrapelyProxy": true,
"scrapelyProxyGroups": [
"DATACENTER"
]
}
})
// Read the dataset the run produced.
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)Tokens live in your account settings. Keep them server-side: a token carries the full permissions of your account.
Connect the Scrape.ly MCP server once and your agent can run this actor as a tool. Pick your tool:
Fetch scrape.ly/agents.md and run shelfbright/walmart-scraperPaste into Claude Code, Codex, Cursor or any AI agent. It signs you in once in the browser.
{
"mcpServers": {
"scrapely": {
"url": "https://api.scrape.ly/mcp?tools=actors,runs,storage,docs&actors=shelfbright/walmart-scraper"
}
}
}No key in the file: your client opens the browser to sign you in the first time it connects.
Inputs the developer prepared for common jobs. Open one to see its input, then copy it to your account to run it as-is or adjust it.
Search results in a price range, cheapest first.
One row per customer review.
Products from a category page with full details.
Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.