# Lowes Product Scraper 🛍️ (`easyapi/lowes-product-scraper`) Actor

Scrape product listings from Lowes.com search results, including detailed product information, images, descriptions, ratings, and pricing. Perfect for market research, price monitoring, and product analysis.

- **URL**: https://apify.com/easyapi/lowes-product-scraper.md
- **Developed by:** [EasyApi](https://apify.com/easyapi) (community)
- **Categories:** E-commerce, Integrations, Other
- **Stats:** 136 total users, 10 monthly users, 64.3% runs succeeded, 6 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $2.99 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Lowes Product Scraper 🛍️

Powerful scraper for extracting detailed product information from Lowes.com search results. Get comprehensive product data including descriptions, prices, ratings, images, and more!

### Features ✨

- 🔍 Scrape products from any Lowes.com search URL
- 📦 Extract detailed product information including:
  - Product ID and model numbers
  - Brand information
  - Product descriptions
  - Marketing bullets
  - Category information
  - Ratings and review counts
  - Image URLs (main and additional images)
  - Product URLs
  - Vendor information
- 🚀 High-performance scraping with built-in proxy rotation
- 🛡️ Advanced browser fingerprint protection
- ⚡ Automatic pagination handling
- 💾 Clean, structured JSON output

### Usage 💡

1. Input a Lowes.com search URL (e.g., "https://www.lowes.com/search?searchTerm=desk%20chairs")
2. Set the maximum number of items to scrape (optional)
3. Configure proxy settings if needed (optional)
4. Run the actor and get structured product data!

### Output 📊

The actor provides detailed product information in JSON format, including:

- Product identifiers (omniItemId, itemNumber, modelId)
- Complete product descriptions
- All product images
- Marketing information
- Pricing details
- Category classification
- Vendor information
- Timestamps

### Input Parameters 🎯

- `searchUrls`: Array of Lowes.com search URLs to scrape
- `maxItems`: Maximum number of products to scrape
- `proxyConfiguration`: Optional proxy settings

### Use Cases 🎯

- Market research and analysis
- Price monitoring and comparison
- Product catalog building
- Competitive analysis
- E-commerce data aggregation

#### Input Example

A full explanation of an input example in JSON.

```json
{
    "searchUrls": [
        "https://www.lowes.com/search?searchTerm=desk%20chairs"
    ],
    "maxItems": 30
}
```

#### Output sample

The results will be wrapped into a dataset which you can always find in the **Storage** tab. Here's an excerpt from the data you'd get if you apply the input parameters above:

And here is the same data but in JSON. You can choose in which format to download your data: JSON, JSONL, Excel spreadsheet, HTML table, CSV, or XML.

```json
[
    {
        "searchUrl": "https://www.lowes.com/search?searchTerm=desk%20chairs",
        "product": {
            "omniItemId": "1003270508",
            "brand": "BestOffice",
            "categories": {
                "106261": "OFFICE_CHAIRS"
            },
            "description": "Black Contemporary Ergonomic Adjustable Height Swivel Mesh Executive Chair",
            "epc": {
                "swatchImgs": [],
                "additionalImages": [
                    {
                        "seq": "102",
                        "src": "Vendor Provided",
                        "baseUrl": "https://mobileimages.lowes.com/productimages/3339a7b3-4fd0-41ce-9e90-52bb579a0efd/16889090.jpg"
                    },
                    {
                        "seq": "103",
                        "src": "Vendor Provided",
                        "baseUrl": "https://mobileimages.lowes.com/productimages/dca67591-6740-4e6b-853e-17251636c134/16889088.jpg"
                    },
                    {
                        "seq": "104",
                        "src": "Vendor Provided",
                        "baseUrl": "https://mobileimages.lowes.com/productimages/e5d65e27-3254-40c3-897f-66b78159b0ca/16889089.jpg"
                    },
                    {
                        "seq": "105",
                        "src": "Vendor Provided",
                        "baseUrl": "https://mobileimages.lowes.com/productimages/d10b570a-d5c9-4460-b9bf-84bfc0eda6f1/16889093.jpg"
                    },
                    {
                        "seq": "106",
                        "src": "Vendor Provided",
                        "baseUrl": "https://mobileimages.lowes.com/productimages/bfba3095-7539-4004-b44c-9a04332fa710/16889100.jpg"
                    },
                    {
                        "seq": "107",
                        "src": "Vendor Provided",
                        "baseUrl": "https://mobileimages.lowes.com/productimages/bb121578-ab59-4fa6-9c25-e1e97412e101/16889091.jpg"
                    }
                ],
                "videos": [],
                "videoSets": [],
                "spinSet": "",
                "spinSets": [],
                "imageSpins": []
            },
            "isPublished": "Y",
            "isBuyable": "Y",
            "itemNumber": "2886225",
            "marketingBullets": [
                {
                    "key": "1",
                    "value": "New modern style, beautiful generous and strong practicability"
                },
                {
                    "key": "2",
                    "value": "This office mesh chair has an extremely comfortable nylon mesh back that supports back"
                },
                {
                    "key": "3",
                    "value": "Size and look makes the adjustable chair ideal for any conference room or office seating, the back executive styling to make you feel relax"
                }
            ],
            "modelId": "VN-H03-BLACK",
            "orderItemMulQty": 1,
            "orderItemMinQty": 1,
            "pdURL": "/pd/BestOffice-Home-Office-Chair-Ergonomic-Desk-Chair-Mesh-Computer-Chair-with-Lumbar-Support-Armrest-Executive-Rolling-Swivel-Adjustable-Mid-Back-Task-Chair-for-Women-Adults-Black/1003270508",
            "rating": "4.3",
            "reviewCount": "79",
            "productVisualizer": false,
            "type": "ANY",
            "vendorNumber": "107030",
            "vendorDirect": "1",
            "showVariants": false,
            "sponsored": false,
            "marketplace": false,
            "merchandisingHierarchy": {
                "productGroup": "511608",
                "assortment": "28818",
                "assortmentDescription": "SOS OFFICE FURNITURE"
            },
            "imageUrl": "/productimages/e91bb942-29fb-4413-9f1e-e3d185e3b84a/16889087.jpg",
            "pricePerUnit": {},
            "alternateImageUrl": "https://mobileimages.lowes.com/productimages/3339a7b3-4fd0-41ce-9e90-52bb579a0efd/16889090.jpg"
        },
        "scrapedAt": "2025-02-08T01:15:08.335Z"
    },
    ...
]
```

### Related Actors

- 🛒 [Costco Product Scraper](https://apify.com/easyapi/costco-product-scraper) - Extract detailed product data from Costco.com including prices, descriptions, ratings, and availability.
- 🛍️ [Sam's Club Product Scraper](https://apify.com/easyapi/sam-s-club-product-scraper) - Extract detailed product data from Sam's Club search results, including prices, descriptions, reviews, and inventory information.
- 🛍️ [Nike Product Scraper](https://apify.com/easyapi/nike-product-scraper) - Extract product data from Nike.com search results including prices, colors, images and detailed product information.
- 🛍️ [Hobby Lobby Products Scraper](https://apify.com/easyapi/hobby-lobby-products-scraper) - Scrape product data from Hobby Lobby's website with comprehensive product details and variants.
- 🛍️ [Lidl Product Scraper](https://apify.com/easyapi/lidl-product-scraper) - Scrape product data from Lidl's online store including prices, images, descriptions, ratings and stock information.
- 🛍️ [Flipkart Product Scraper](https://apify.com/easyapi/flipkart-product-scraper) - Scrape product data from Flipkart search results with detailed product information and pricing.
- 🛍️ [AJIO Product Scraper](https://apify.com/easyapi/ajio-product-scraper) - Extract detailed product information from AJIO's fashion marketplace with comprehensive data.
- 🛍️ [Zara Product Scraper](https://apify.com/easyapi/zara-product-scraper) - Extract detailed product information including prices, variants, images from Zara's online store.
- 🛒 [Woolworths Product Scraper](https://apify.com/easyapi/woolworths-product-scraper) - Extract detailed product data from Woolworths Australia's online store.
- 🛍️ [Weekday Product Scraper](https://apify.com/easyapi/weekday-product-scraper) - Extract product data from Weekday's online store with detailed variants and availability.
- 🛍️ [Tokopedia Product Scraper](https://apify.com/easyapi/tokopedia-product-scraper) - Scrape product data from Tokopedia search results with comprehensive details.
- 🏥 [Netmeds Product Scraper](https://apify.com/easyapi/netmeds-product-scraper) - Extract detailed product information from Netmeds.com with prices and inventory status.
- 🛍️ [Meesho Product Detail Scraper](https://apify.com/easyapi/meesho-product-detail-scraper) - Scrape detailed product information from Meesho.com with prices and seller information.
- 🛍️ [Myntra Product Scraper](https://apify.com/easyapi/myntra-product-scraper) - Extract detailed product information from AJIO's fashion marketplace.
- 🛍️ [AppSumo Product Scraper](https://apify.com/easyapi/appsumo-product-scraper) - Scrape products, deals, and offers from AppSumo marketplace with comprehensive details.

# Actor input Schema

## `searchUrls` (type: `array`):

List of Lowes.com search URLs to scrape

## `maxItems` (type: `integer`):

Maximum number of products to scrape

## `proxyConfiguration` (type: `object`):

Proxy settings for the scraper

## Actor input object example

```json
{
  "searchUrls": [
    "https://www.lowes.com/search?searchTerm=desk%20chairs"
  ],
  "maxItems": 30,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchUrls": [
        "https://www.lowes.com/search?searchTerm=desk%20chairs"
    ],
    "maxItems": 30
};

// Run the Actor and wait for it to finish
const run = await client.actor("easyapi/lowes-product-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchUrls": ["https://www.lowes.com/search?searchTerm=desk%20chairs"],
    "maxItems": 30,
}

# Run the Actor and wait for it to finish
run = client.actor("easyapi/lowes-product-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchUrls": [
    "https://www.lowes.com/search?searchTerm=desk%20chairs"
  ],
  "maxItems": 30
}' |
apify call easyapi/lowes-product-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,easyapi/lowes-product-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/vKced1LevH3sIdoXU/builds/2yP3clFFQNde7yqL3/openapi.json
