John Lewis Product Scraper
Pricing
$4.45 / 1,000 scraped products
John Lewis Product Scraper
Scrape John Lewis product and variant data from product URLs, category URLs, search URLs, search terms, and brand names. Get prices, stock status, images, ratings, specifications, and source URLs.
Pricing
$4.45 / 1,000 scraped products
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
🛒 John Lewis product scraper for product data
John Lewis Product Scraper collects public product and variant data from John Lewis. Add product URLs, category URLs, search URLs, plain search terms, or brand names, then export product titles, prices, availability, variants, images, ratings, specifications, category context, source URLs, and scrape timestamps.
Use this John Lewis product scraper when you need UK retail product data for price checks, stock monitoring, catalogue research, assortment reports, or repeat ecommerce workflows. It saves one dataset row per accepted product or variant, so colour and size variants can be tracked separately when John Lewis exposes them.
For a small first run, keep the prefilled search, set Product limit to 25, and leave Page limit per target at 1. Review the dataset, then raise the limits for larger searches or scheduled monitoring.
✅ What this Actor does
- Scrapes public John Lewis product, search, brand, and category pages.
- Accepts John Lewis product URLs, category URLs, brand URLs, search URLs, search terms, and brand names.
- Saves one row per visible product or variant when variant data is available.
- Extracts product title, brand, product URL, product ID, variant URL, variant ID, SKU, product code, colour, size, and source metadata.
- Extracts current price, previous price, price range, currency, availability, stock flags, and promotion text when visible.
- Extracts ratings, review counts, main image URL, image URL arrays, breadcrumbs, category paths, descriptions, specifications, dimensions, and weight when John Lewis shows them.
- Stops at your
maxItemslimit across the run. - Works with Apify dataset exports, API clients, schedules, webhooks, and integrations.
- Runs without a John Lewis login, cookies, or a user-provided API key.
The Actor focuses on public John Lewis product data. It does not scrape non-John-Lewis retailers, private account data, checkout data, delivery slots, historical prices, or customer review text.
📦 Data you can extract
Each dataset item is one John Lewis product or product variant. Fields can be empty when John Lewis does not show that value for a product.
productId- John Lewis product identifier or source identifier.productTitle- product name shown by John Lewis.brand- product brand when available.productUrl- canonical product URL.variantId,variantTitle,variantUrl,skuId, andproductCode- variant and SKU identifiers when available.colour,trueColour, andsize- variant attributes when shown.currentPrice,currentPriceDisplay,previousPrice,previousPriceDisplay,priceMin,priceMax, andpriceRangeDisplay- numeric and display price fields.currency- alwaysGBP.availability,availableToOrder, andoutOfStock- stock and ordering signals from the source.promotions- visible promotion text.ratingandreviewCount- review summary values when shown.mainImageUrl,imageUrls, andimageCount- product media URLs.breadcrumbs,categoryPath,mainCategory, andsubCategory- category context.description,specifications,weight, anddimensions- detail fields when visible.source- input target, target type, source URL, page number, and listing position.scrapedAt- UTC timestamp when the row was saved.
🧭 Common use cases
- Track John Lewis product prices for a keyword, category, brand, or saved product URL.
- Monitor availability and visible stock status for products and variants.
- Compare brands, colours, sizes, ratings, and review counts in a category.
- Build UK retail catalogue exports with images and specifications.
- Feed product rows into spreadsheets, BI tools, dashboards, or internal APIs.
- Schedule repeat Apify runs for recurring price and assortment checks.
🚀 How to run
- Add one or more values to Product targets. You can paste John Lewis URLs or type search terms such as
coffee machineortoaster. - Optionally add Extra brand names such as
Le Creuset,Bosch, orSmeg. - Set Product limit. Use
25for a quick first run. - Set Page limit per target if you want to continue through more search or category pages.
- Keep Include unavailable products on if you want visible unavailable variants in the dataset.
- Run the Actor and open the dataset.
The Actor handles source access for you. You do not need to add a proxy, John Lewis account, cookies, or API key.
⚙️ Input example
{"targets": ["coffee machine","https://www.johnlewis.com/search?search-term=toaster"],"brands": ["Le Creuset"],"maxItems": 25,"maxPagesPerTarget": 1,"includeUnavailableProducts": true}
🧾 Output example
{"productId": "5521950","productTitle": "John Lewis 2 Slice Toaster","brand": "John Lewis","productUrl": "https://www.johnlewis.com/john-lewis-2-slice-toaster/p5521950","variantId": "dc30c5de-668f-51bd-a9ea-0f19b8f600f0","variantTitle": "John Lewis 2 Slice Toaster, Navy Blue","variantUrl": "https://www.johnlewis.com/john-lewis-2-slice-toaster/navy-blue/p5521950","skuId": "113614146","productCode": null,"colour": "Navy Blue","trueColour": "Navy Blue","size": null,"currentPrice": 15,"currentPriceDisplay": "£15.00","previousPrice": null,"previousPriceDisplay": null,"priceMin": 15,"priceMax": 15,"priceRangeDisplay": "£15.00","currency": "GBP","availability": "In stock","availableToOrder": true,"outOfStock": false,"promotions": ["Save £5 on selected products"],"rating": 4.4,"reviewCount": 291,"mainImageUrl": "https://media.johnlewiscontent.com/i/JohnLewis/113614146alt2?","imageUrls": ["https://media.johnlewiscontent.com/i/JohnLewis/113614146alt2?","https://media.johnlewiscontent.com/i/JohnLewis/113614146"],"imageCount": 2,"breadcrumbs": ["Search results 'toaster'"],"categoryPath": "Search results 'toaster'","mainCategory": "Search results 'toaster'","subCategory": null,"description": null,"specifications": {"Brand": ["John Lewis"],"Dimensions": ["H19.4 x W30.2 x D20cm"],"Weight": ["1.18 kg"]},"weight": "1.18 kg","dimensions": "H19.4 x W30.2 x D20cm","source": {"target": "toaster","targetType": "searchTerm","url": "https://www.johnlewis.com/search?search-term=toaster","pageNumber": 1,"position": 1},"scrapedAt": "2026-06-09T11:10:09.033Z"}
💳 Pricing
This Actor uses pay-per-event pricing. You are charged $0.00445 for each product or variant collected, which is $4.45 per 1,000 saved rows.
If a run starts but no products are saved, there is no product charge from this Actor's primary event. Keep the product limit low for your first run, check the output, then raise it for larger jobs.
⚠️ Limits and caveats
John Lewis can show different fields for different product types. Some products may not have variants, previous prices, reviews, specifications, descriptions, or multiple images. The Actor leaves those fields empty instead of inventing values.
Search terms and brand names are resolved through John Lewis search. For precise category filters, paste the exact John Lewis category, brand, or search URL you want to scrape.
This Actor captures the public product data visible at run time. It does not store historical prices by itself, but you can schedule repeat Apify runs and compare datasets over time.
❓ FAQ
🔎 Does this scrape product pages or only listing pages?
It can start from both. Product URLs return product or variant rows directly. Search, category, brand, and plain-text targets collect visible product and variant data from listing pages.
🗂️ Can I scrape a specific John Lewis category?
Yes. Paste the John Lewis category URL into Product targets and set your product and page limits.
📦 Does it include unavailable products?
Yes, by default. Turn off Include unavailable products if you only want products and variants that John Lewis marks as available when they are visible in the source.
🔐 Do I need a John Lewis account?
No. The Actor only uses public product surfaces and does not ask for John Lewis credentials, cookies, or a user API key.
📝 Changelog
- 0.1: Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Other actors
- Allegro Scraper ↗ - Scrape marketplace product listings, prices, sellers, images, and delivery text from Allegro.
- Google Shopping Ads Scraper ↗ - Collect live paid Shopping product ads from Google Search for ecommerce research.
- Amazon Keywords Discovery Tool ↗ - Discover Amazon autocomplete keyword ideas for product and marketplace research.
- OLX Scraper ↗ - Export OLX listing prices, seller details, locations, photos, and attributes.
- Autotrader Scraper ↗ - Scrape public US vehicle listings with prices, VINs, seller details, photos, and source URLs.
Made with ❤️ by Maxime Dupré