B&H Product Scraper avatar

B&H Product Scraper

Pricing

from $2.50 / 1,000 b&h product scrapeds

Go to Apify Store
B&H Product Scraper

B&H Product Scraper

πŸ“Έ Scrape detailed product data from B&H Photo & Video including price, specifications, weight, images, reviews, and availability. πŸ› Ideal for building Shopify catalogs, product databases, or monitoring price and stock changes across the B&H catalog.

Pricing

from $2.50 / 1,000 b&h product scrapeds

Rating

0.0

(0)

Developer

Krazee

Krazee

Maintained by Community

Actor stats

0

Bookmarked

13

Total users

4

Monthly active users

5.4 hours

Issues response

3 days ago

Last modified

Share

πŸ“Έ B&H Photo Video Product Scraper

This B&H Photo Video product scraper extracts structured product data from B&H Photo & Video, including price, technical specifications, images, reviews, weight, and availability.

The actor collects structured product information directly from individual product pages and returns it as a clean dataset ready for further processing.

The extracted data can be used to build Shopify product catalogs, maintain ecommerce product databases, or monitor price and inventory changes across the B&H catalog.

πŸ“š Table of Contents


πŸ” Build and Update Your Product Catalog

This actor is designed to help you build a product catalog once and keep it updated over time.

A typical workflow looks like this:

  1. Run the actor on B&H category pages to discover and collect product data.
  2. The actor saves the discovered product URLs.
  3. Later, run the actor again to refresh product information for those same products.

This allows you to keep your catalog updated with changes such as:

  • price updates
  • stock availability changes
  • new reviews and ratings
  • promotions and discounts

Without crawling category pages again.

This makes recurring updates much faster and more efficient, especially when managing large product catalogs.


⚑ Quick Start

First Run (Catalog Discovery)

1️⃣ Provide category URLs

2️⃣ Run the actor in Full Sync mode

The actor will:

  • discover products
  • scrape them
  • store their URLs for future updates

Future Runs (Fast Updates)

Run the actor again in Update Existing mode.

The actor will:

  • load previously discovered product URLs
  • scrape only the product pages
  • skip category crawling entirely

This makes refresh runs significantly faster and lighter.


πŸ“¦ What Data You Get

Each dataset item represents one fully structured product record from B&H Photo & Video.

Key Product Fields

The dataset captures the most important attributes typically required for Shopify catalogs, ecommerce databases, and product monitoring systems:

  • name – Product name
  • brandName – Manufacturer / brand
  • price – Current product price
  • sku – B&H product identifier
  • manufacturerCatalogNumber – Manufacturer part number (MPN)
  • itemWeight – Product weight for shipping calculations
  • imageUrls – Product image gallery
  • rating and reviewCount – Customer reputation signals
  • sellingPoints – Product feature highlights
  • includedItems – Items included in the box
  • specifications – Full technical specification table

These fields allow the dataset to power workflows such as product catalog creation, listing automation, market research, and price monitoring.


Complete Field Overview

CategoryWhat’s IncludedWhy It’s Useful
πŸ†” Product Identitysku
bhId
name
shortDescription
itemCode
manufacturerCatalogNumber
upc
Core identifiers used for catalog imports, product matching, and inventory systems
🏷 Brand InformationbrandNameUseful for catalog filtering, brand analysis, and marketplace listings
πŸ’° Pricing & Promotionsprice
currencyPrice
strikethroughPrice
hasDiscount
hasSavings
instantSavingsAmount
instantSavingsPercent
Enables price tracking, discount monitoring, and promotion analysis
πŸ›’ Commercial RulessoldInKitOnly
callForPrice
mapItem
hasSessionPricing
Indicates special pricing rules or sales restrictions
πŸ“¦ Inventory & AvailabilitystockAvailability
stockStatus
stockMessage
stockImportance
stockShipTime
maxSellQuantity
minSellQuantity
sellsInMultipleOf
Tracks stock signals, availability changes, and selling limits
πŸ“ Physical & Packaging SpecsitemWeight
weightUnit
itemLength
itemWidth
itemHeight
dimensionUnit
packageWeight
packageLength
packageWidth
packageHeight
Essential for shipping calculations, logistics, and catalog completeness
πŸ“¦ Box ContentsincludedItems[]Lists everything included with the product, useful for product page descriptions and bundle validation
πŸ–Ό Images & MediamainImageUrl
imageUrls[]
imageCount
hasImages
hasSecondaryImages
hasVideos
has3DImages
Provides complete product media assets for catalogs or storefronts
⭐ Reviews & Reputationrating
reviewCount
hasReviews
Helps evaluate product popularity and customer satisfaction
πŸ›‘ Warranty & ProtectionhasManufacturerWarranty
manufacturerWarrantyPeriod
hasProtectionPlans
protectionPlanCount
lowestProtectionPlanPrice
hasWarranty
Valuable for customer assurance signals and product comparisons
πŸ—‚ Category Contextcategory1
category2
category3
Useful for catalog categorization and product grouping
πŸ” SEO & URLsproductUrl
canonicalUrl
shortUrl
pageTitle
seoShortDescription
Useful for linking, indexing, and referencing product pages
🧾 Technical Specificationsspecifications – Fully grouped specification table extracted from the product pageProvides the complete technical spec sheet for each product
πŸ§‘β€πŸ’» MetadatascrapedAt
rawPayloadVersion
Tracks scraping time and dataset versioning

πŸ’‘ All fields are normalized, nullable-safe, and structured for analytics pipelines, catalog systems, or product monitoring workflows.


πŸ”₯ Common Use Cases

This actor is typically used in workflows where complete product data from B&H Photo & Video is required for catalogs, monitoring, or research.


πŸ› Build Shopify or Ecommerce Product Catalogs

Collect detailed product information including:

  • product name and brand
  • price and discounts
  • weight and package dimensions
  • product images
  • feature highlights (sellingPoints)
  • items included in the box
  • full technical specifications

This data can be used to populate product listings in Shopify or other ecommerce systems.

The category fields (category1, category2, category3) can also help organize products into collections or product types when importing large catalogs.


πŸ” Maintain and Refresh Product Databases

After discovering products once, the actor can refresh product data later without crawling categories again.

This makes it easy to keep large product databases updated with:

  • price changes
  • stock availability
  • review updates
  • new promotions or discounts

This workflow is especially useful when managing large product catalogs that need regular updates.


πŸ’° Price Monitoring

Track product prices and promotional signals across B&H products.

Useful fields include:

  • price
  • strikethroughPrice
  • instantSavingsAmount
  • instantSavingsPercent

This allows you to monitor price fluctuations and discount activity across product categories.


πŸ“¦ Inventory and Availability Monitoring

The dataset includes several signals related to stock availability and selling limits, such as:

  • stockStatus
  • stockMessage
  • maxSellQuantity
  • stockShipTime

These can help track availability changes and inventory behavior.


🧾 Product Research and Specification Databases

The actor extracts complete technical specification tables from each product page.

This allows you to build structured datasets containing:

  • detailed product specifications
  • product features (sellingPoints)
  • packaging information
  • included accessories

Such datasets can be used for product comparison tools, research databases, or catalog enrichment.


πŸ“Š Product and Market Analysis

Because the dataset includes structured pricing, categories, ratings, and inventory signals, it can also be used for:

  • category-level product analysis
  • brand distribution research
  • review and reputation tracking
  • product feature comparisons

βš™οΈ Scraping Modes

The actor supports two simple modes depending on what you want to do.

πŸ”Ž Full Sync

Use Full Sync when you want to discover and scrape products from B&H category pages.

The actor will:

  • crawl the provided category URLs
  • discover all product pages in those categories
  • scrape complete product data
  • save discovered product URLs for future updates

This mode is typically used when building your product catalog for the first time.


πŸ”„ Update Existing

Use Update Existing when you already have a saved product list and want to refresh product data.

Instead of crawling category pages again, the actor will:

  • load the previously discovered product URLs

  • scrape each product directly

  • return updated information such as:

    • price
    • availability
    • reviews
    • promotions
    • stock signals

For example:

  1. You run Full Sync on a set of category URLs and collect 20,000 products.
  2. Later you run Full Sync again on other categories and collect another 20,000 products.
  3. After some time you want to refresh your dataset.

Instead of crawling categories again, you simply run Update Existing, and the actor will update all saved products in your dataset.

This makes recurring updates much faster and more efficient.


⬇️ Input Format

InputDescription
modeScraping mode: full_sync or update_existing
categoryUrlsCategory URLs used for Full Sync mode
productsLimitMax products per category URL
includeReviewsInclude customer reviews
reviewsLimitReviews per product
productUrlsDatasetIdDataset containing saved product URLs used for Update Existing mode

πŸ§ͺ Example Input

Here is a sample JSON input you can provide when running the scraper:

{
"mode": "Full sync",
"includeReviews": false,
"categoryUrls": [
"https://www.bhphotovideo.com/c/browse/Lighting-Studio/ci/1161/N/4294551176",
"https://www.bhphotovideo.com/c/buy/light-panels/ci/48383",
],
"productsLimit": 20
}

πŸ“₯ Example output (JSON):

{
"sku": 1667228,
"itemSource": "REG",
"name": null,
"shortDescription": "Sigma 18-50mm f/2.8 DC DN Contemporary Lens for Sony E",
"upc": null,
"brandName": "Sigma",
"brandAuthorizedDealer": true,
"brandUrl": "/c/browse/Sigma/ci/5545/N/4232860402",
"itemCode": "SI185028DCEM",
"manufacturerCatalogNumber": "585965",
"productUrl": "/c/product/1667228-REG/sigma_18_50mm_f_2_8_dg_dn.html",
"shortUrl": "https://bhpho.to/3vhUahU",
"pageTitle": "Sigma 18-50mm f/2.8 DC DN Contemporary Lens for Sony E 585965",
"canonicalUrl": "https://www.bhphotovideo.com/c/product/1667228-REG/sigma_18_50mm_f_2_8_dg_dn.html",
"seoShortDescription": "Sigma 18-50mm f/2.8 DC DN Contemporary",
"price": 555,
"currencyPrice": null,
"strikethroughPrice": null,
"soldInKitOnly": false,
"callForPrice": false,
"mapItem": false,
"hasSessionPricing": false,
"hasDiscount": false,
"hasSavings": false,
"instantSavingsAmount": null,
"instantSavingsPercent": null,
"instantSavingsEndDate": null,
"taxNote": null,
"stockStatus": "IN_STOCK",
"stockImportance": "LOW",
"stockMessage": "Temporarily Out of Stock",
"stockShipTime": null,
"shipsAlone": false,
"freeShipping": false,
"maxSellQuantity": 20,
"minSellQuantity": 1,
"sellsInMultipleOf": 1,
"rating": 5,
"reviewCount": 247,
"hasReviews": true,
"isHighlyRated": true,
"mainImageUrl": "https://static.bhphoto.com/images/images345x345/1634631630_1667228.jpg",
"images": [
{
"url": "https://static.bhphoto.com/images/images345x345/1634631630_1667228.jpg",
"width": 345,
"height": 345,
"type": "main",
"isMain": true,
"note": null
},
{
"url": "https://www.bhphotovideo.com/images/images500x500/sigma_18_50mm_f_2_8_dg_dn_1634631630_1667228.jpg",
"width": 500,
"height": 500,
"type": "gallery",
"isMain": false,
"note": null
},
{
"url": "https://static.bhphoto.com/images/multiple_images/images500x500/1634631378_IMG_1623592.jpg",
"width": 500,
"height": 500,
"type": "gallery",
"isMain": false,
"note": null
},
{
"url": "https://static.bhphoto.com/images/multiple_images/images500x500/1634631378_IMG_1623593.jpg",
"width": 500,
"height": 500,
"type": "gallery",
"isMain": false,
"note": null
},
{
"url": "https://static.bhphoto.com/images/multiple_images/images500x500/1634631378_IMG_1623602.jpg",
"width": 500,
"height": 500,
"type": "gallery",
"isMain": false,
"note": null
},
{
"url": "https://static.bhphoto.com/images/multiple_images/images500x500/1634631378_IMG_1623603.jpg",
"width": 500,
"height": 500,
"type": "gallery",
"isMain": false,
"note": "Sample Photo"
},
{
"url": "https://static.bhphoto.com/images/multiple_images/images500x500/1634631378_IMG_1623604.jpg",
"width": 500,
"height": 500,
"type": "gallery",
"isMain": false,
"note": "Sample Photo"
},
{
"url": "https://static.bhphoto.com/images/multiple_images/images500x500/1634631378_IMG_1623605.jpg",
"width": 500,
"height": 500,
"type": "gallery",
"isMain": false,
"note": "Sample Photo"
},
{
"url": "https://static.bhphoto.com/images/multiple_images/images500x500/1634631378_IMG_1623606.jpg",
"width": 500,
"height": 500,
"type": "gallery",
"isMain": false,
"note": "Sample Photo"
}
],
"imageCount": 9,
"hasImages": true,
"hasSecondaryImages": true,
"hasVideos": true,
"has3DImages": true,
"isUsed": false,
"isRefurbished": false,
"isOpenBox": false,
"isNewArrival": false,
"isNewRelease": false,
"isExclusive": false,
"conditionLabel": null,
"hasManufacturerWarranty": true,
"manufacturerWarrantyPeriod": "Year",
"hasProtectionPlans": true,
"protectionPlanCount": 3,
"lowestProtectionPlanPrice": 71.99,
"hasWarranty": true,
"sellingPoints": [
"E-Mount Lens/APS-C Format",
"27-75mm (35mm Equivalent)",
"Aperture Range: f/2.8 to f/22",
"Minimum Focusing Distance: 4.8\"",
"Three Aspherical Elements",
"Special Low Dispersion Element",
"Rounded 7-Blade Diaphragm",
"Dust- and Splash-Proof Design",
"Includes LH582-02 Lens Hood"
],
"categoryExperts": [
{
"profileTitle": "Rafael D., B&H Photo Expert",
"imageUrl": "https://static.bhphotovideo.com/explora/sites/default/files/exp/rafael-d.png",
"categoryName": "Photography"
},
{
"profileTitle": "Vilson L., B&H Photo Expert",
"imageUrl": "https://static.bhphotovideo.com/explora/sites/default/files/exp/vilson-l.png",
"categoryName": "Photography"
},
{
"profileTitle": "Leonard E., B&H Photo Expert",
"imageUrl": "https://static.bhphotovideo.com/explora/sites/default/files/exp/leonard-e.png",
"categoryName": "Photography"
},
{
"profileTitle": "Marisa P., B&H Photo Expert",
"imageUrl": "https://static.bhphotovideo.com/explora/sites/default/files/exp/marisa-p.png",
"categoryName": "Photography"
},
{
"profileTitle": "Gerry R., B&H Photo Expert",
"imageUrl": "https://static.bhphotovideo.com/explora/sites/default/files/exp/gerry-r.png",
"categoryName": "Photography"
},
{
"profileTitle": "Boyd H., B&H Photo Expert",
"imageUrl": "https://static.bhphotovideo.com/explora/sites/default/files/exp/boyd-h.png",
"categoryName": "Photography"
},
{
"profileTitle": "Gil R., B&H Expert",
"imageUrl": "https://static.bhphotovideo.com/explora/sites/default/files/exp/gil-r.png",
"categoryName": "Photography"
},
{
"profileTitle": "Jeannette G., B&H Photo Expert",
"imageUrl": "https://static.bhphotovideo.com/explora/sites/default/files/exp/jeannette_g.png",
"categoryName": "Photography"
},
{
"profileTitle": "Jamie P., B&H Photo Expert",
"imageUrl": "https://static.bhphotovideo.com/explora/sites/default/files/exp/jamie_p.png",
"categoryName": "Photography"
},
{
"profileTitle": "Patrick D., B&H Photo Expert",
"imageUrl": "https://static.bhphotovideo.com/explora/sites/default/files/exp/patrick_d_1.png",
"categoryName": "Photography"
}
],
"scrapedAt": "2026-01-19T09:10:01.322537",
"rawPayloadVersion": "v1"
},

🧭 Output Views in Apify

The actor includes predefined output overviews in the Apify UI, tailored for different user needs such as pricing analysis, inventory monitoring, and market research.
You can explore these directly in the Apify Dataset β†’ Output tab without writing any code.


πŸ§ͺ Reliability & Run Recovery

The actor is designed to run reliably even when scraping large product catalogs.

Automatic Retries

Temporary network errors or blocked requests may occasionally occur when scraping large sites.

The actor automatically retries failed requests using session rotation and retry logic, allowing the run to continue without manual intervention.


Resume Interrupted Runs

If a run stops unexpectedly (for example due to platform limits, network issues, or manual interruption), you can resume the run without losing progress.

Using Apify's Resurrect Run feature, the actor will continue processing the remaining product URLs instead of starting from the beginning.

This is especially useful when running the actor on large product collections.


How Resume Works

Because the actor saves discovered product URLs and tracks processed requests, a resurrected run will continue from where the previous run stopped.

This applies to both scraping modes:

Full Sync

  • Category crawling and product scraping will resume from the remaining items.

Update Existing

  • Remaining product URLs that were not yet processed will continue scraping.

What This Means

You can safely run the actor on large category lists or product catalogs without worrying about losing progress if a run stops midway.