# Changelog of Lowe's Product Scraper (`sian.agency/lowes-product-scraper`) Actor

- **URL**: https://apify.com/sian.agency/lowes-product-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/sian.agency/lowes-product-scraper.md

## Changelog

All notable changes to the Lowe's Product Scraper will be documented in this file.

### 1.0.5 — 2026-09-30

#### 🐛 Fixed

- Updated the drill-category example to the current Lowe's URL. Detail-mode guidance now explains that products delivered without enrichment are charged at the Overview price.
- **Detail-mode runs that run out of time now keep the products they already found** — when a run's timeout arrived after the search results were collected but before every product page was fetched, the scraper dropped all of them and returned 0 results. It now delivers those products with their search-page fields (brand, ratings, images, availability) instead of nothing, and the run log says exactly how many were delivered without detail enrichment. Raise the run timeout to get the full detail fields.
- **Re-landed the 1.0.4 fixes that never reached the live actor** — keyword searches that land on a category page now return its products (Lowe's redirects some keywords like "recessed light" to a category landing page with no product list), and runs with a timeout too short to fetch anything (~90 s or less) now fail with a clear error instead of reporting "no results".

### 1.0.4 — 2026-09-25

#### 🐛 Fixed

- **Keyword searches that land on a category page now return its products** — Lowe's redirects some perfectly good keywords (e.g. "recessed light", "flooring") to a category landing page with no product list on it, so those searches came back with **0 results**. The scraper now recognises that redirect and follows the page's own link to the real product list, returning the products as before.
- **Runs with a timeout too short to fetch anything now fail loudly instead of reporting "no results"** — with a run timeout under ~90 seconds the scraper cannot fit even one attempt at Lowe's (clearing its protection takes 35–100s). Those runs used to finish green with 0 products, which looked identical to a search with no matches. They now end with a clear error explaining the timeout was too short, so you can raise **Timeout** and re-run instead of retrying a run that can never succeed.

### 1.0.3 — 2026-09-24

#### 🔧 Changed

- **The input form now starts at 24 results** — one page of Lowe's results, so your first run comes back quickly. Raise **Max Results** whenever you want more. If you leave it out of an API call, the default is still 100.

### 1.0.2 — 2026-09-23

#### 🐛 Fixed

- **Runs no longer time out while Lowe's anti-bot protection is tough** — when Lowe's was hard to get through, the scraper kept retrying until the run hit its timeout and ended as **Timed out**. It now tracks the run's time limit and stops retrying in time to finish normally, keeping every product it already saved and sending the run report as usual.

### 1.0.1 — 2026-09-18

#### 🐛 Fixed

- **Store ID is now honoured, and never guessed** — products returned with a Store ID set could come back carrying a different Lowe's store's number, shelf quantity and availability, sometimes several different stores in one run and occasionally the same product twice with two different stores. Every product is now checked against the store you asked for. If Lowe's serves a product from a different store, the run retries; when it still cannot get your store, **Store Number**, **Store Quantity** and **In Stock** are left empty for that product instead of showing another store's shelf as yours — and the run log and report tell you exactly how many. Price, specifications, ratings, images and every other field are unaffected.
- **Store Quantity is the shelf at your store** — in Detail mode this figure was Lowe's total availability across its whole network, which made a single store look like it held hundreds or thousands of units. It is now the on-hand pickup quantity at your store. A product can legitimately read `0` here while still being **In Stock**: it ships to you, it just is not on that store's shelf today.

### 1.0.0 — 2026-06-22

#### 🎉 Lowe's Product Scraper — Launch!

- **Keyword & Category Search** - Scrape any Lowe's search term or browse a whole category by nav id, no code required
- **Overview & Detail Modes** - Fast search results, or full enrichment with the current price, the complete specifications table, and the long product description
- **Complete Product Data** - Price, list price, ratings, review counts, images, brand, model, item number, and UPC for every product
- **Live Store Availability** - Pull localized prices and live in-store stock, pickup eligibility, and availability for any Lowe's store ID
- **Native Lowe's Sort Options** - Order results by best sellers, price, top rated, newest, or brand — exactly like the Lowe's site
- **Clean JSON, CSV & Excel Export** - Download structured, ready-to-use Lowe's product data straight from the Apify dataset

#### 💎 User Benefits

- Save hours of manual checking with automated, on-demand Lowe's product data
- Monitor prices, promotions, and store stock across thousands of products in a single run
- Get analysis-ready data in JSON, CSV, or Excel — no scripts, no account, no maintenance
- Start free with 25 products per run, then scale to unlimited results on the paid tier — you pay only for the products you receive

#### 🎯 Use Cases

- Retailers tracking Lowe's price and promo monitoring and reacting to discounts
- Brands running competitor pricing intelligence on price, rating, and availability
- E-commerce teams doing catalog and assortment research with images and full specifications
- Feed managers extracting product specs for feeds and comparison pages
- Merchandisers running in-stock and store-availability checks across stores
- Analysts doing market and demand research on best-sellers and new arrivals
