B&H Product Catalog Builder & Monitor
Pricing
from $2.00 / 1,000 b&h product scrapeds
B&H Product Catalog Builder & Monitor
📸 Scrape raw B&H product data: price, comments, specs, weight, images, and stock. ⚡ Features a 2-stage engine: Build your product catalog once from category pages, then run in Monitor Mode to track daily price drops and stock changes at a fraction of standard platform compute costs.
Pricing
from $2.00 / 1,000 b&h product scrapeds
Rating
0.0
(0)
Developer
Krazee
Maintained by CommunityActor stats
0
Bookmarked
32
Total users
4
Monthly active users
4.8 hours
Issues response
2 days ago
Last modified
Categories
Share
B&H Product Catalog Builder & Monitor is a product data extraction and inventory tracking tool for bhphotovideo.com. It can scrape complete product catalogs with details like prices, specifications, images, shipping weights, reviews, and stock availability, or continuously monitor products for live price and stock changes.
The tool also preserves product URLs across all runs, making it easy to export clean JSON or CSV data directly into retail databases, spreadsheets, or automated inventory tracking systems without manual work.
⚙️ Scraping Modes Explained
The engine operates using two distinct pipelines depending on whether you are building a new data asset or running routine maintenance on an existing one.
- Mode 1: Catalog Discovery (
Full Sync) This mode is designed to discover and harvest fresh products. The engine crawls target B&H category structures or search result pages, extracts complete technical and commercial data fields, and automatically saves the direct product URLs into your persistent output dataset. Subsequent runs on the same categories will isolate and append only newly added items without creating duplicate records. - Mode 2: Fast Asset Updates (
Update Existing) This mode is optimized for continuous price and inventory monitoring loops. Instead of re-crawling category structures, the engine directly reloads your historical product URLs using a past Dataset ID. It bypasses category pagination entirely to fetch volatile updates—like live price drops, instant savings promotions, and stock availability updates—at up to 80% lower runtime and proxy costs.
⚡ Quick Start
If you prefer to configure your runs directly via JSON or the Apify API, select your mode below, copy the payload, and paste it straight into your input console.
🔎 Configuration for Catalog Discovery (Full Sync)
Use this payload structure to crawl a category and establish your baseline tracking list.
{"mode": "Full sync","categoryUrls": ["https://www.bhphotovideo.com/c/buy/light-panels/ci/48383"],"productsLimit": 50,"includeReviews": false}
🔄 Configuration for Fast Asset Updates (Update Existing)
Use this payload structure to bypass categories and instantly refresh data for your previously collected products.
{"mode": "Update Existing","includeReviews": false,}
⚙️ Input Configuration
The actor's configuration dashboard focuses entirely on your data scope and targeting needs. Advanced platform requirements (like proxy distribution and concurrency throttling) are automated entirely under the hood.
| Field Name | Type | Default Value | Description & Constraints |
|---|---|---|---|
Modemode | select | "Full sync" | Sets the processing pipeline. Use Full sync to execute fresh category deep crawls, or Update existing to bypass categories and instantly refresh inventory fields for your entire accumulated database. (Required) |
Category URLscategoryUrls | array | Prefill sample | The list of target category or browser entry points to crawl. Accepts valid B&H link formats containing either /c/buy/ or /c/products/. Note: Ignored when running under Update existing mode. |
Products LimitproductsPerCategory | integer | 50 | The maximum number of product records the scraper will extract from each individual category URL provided. |
Total ProductstotalProducts | integer | 50 | A global safety limit capping the total cumulative volume of products harvested across the entire actor execution run. |
Include reviews?includeReviews | boolean | false | When toggled to true, the engine executes an additional sub-routine to extract complete textual product review logs alongside the baseline listing payload. |
Reviews per productreviewsLimit | integer | 100 | Sets the maximum threshold of individual customer review rows collected per product page. Supports a setting range from 0 up to a maximum ceiling of 200. |
⚠️ Quick Note on B&H Links
When providing links to the Category URLs field, the target web addresses must align strictly with B&H's catalog taxonomy patterns to resolve successfully:
- Valid Format Examples:
https://www.bhphotovideo.com/c/buy/light-panels/ci/48383https://www.bhphotovideo.com/c/products/Flat-Panel-Televisions/ci/2500/...
📦 What Data You Get
Each dataset item represents a fully structured B&H product record that can be directly used in product catalogs, ecommerce systems, or data pipelines.
Key Product Fields
The dataset captures the most important attributes typically required for Shopify catalogs, ecommerce databases, and product monitoring systems:
name– Product namebrandName– Manufacturer / brandprice– Current product pricesku– B&H product identifiermanufacturerCatalogNumber– Manufacturer part number (MPN)itemWeight– Product weight for shipping calculationsimageUrls– Product image galleryratingandreviewCount– Customer reputation signalssellingPoints– Product feature highlightsincludedItems– Items included in the boxspecifications– 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
| Category | What’s Included | Why It’s Useful |
|---|---|---|
| 🆔 Product Identity | skubhIdnameshortDescriptionitemCodemanufacturerCatalogNumberupc | Core identifiers used for catalog imports, product matching, and inventory systems |
| 🏷 Brand Information | brandName | Useful for catalog filtering, brand analysis, and marketplace listings |
| 💰 Pricing & Promotions | pricecurrencyPricestrikethroughPricehasDiscounthasSavingsinstantSavingsAmountinstantSavingsPercent | Enables price tracking, discount monitoring, and promotion analysis |
| 🛒 Commercial Rules | soldInKitOnlycallForPricemapItemhasSessionPricing | Indicates special pricing rules or sales restrictions |
| 📦 Inventory & Availability | stockAvailabilitystockStatusstockMessagestockImportancestockShipTimemaxSellQuantityminSellQuantitysellsInMultipleOf | Tracks stock signals, availability changes, and selling limits |
| 📐 Physical & Packaging Specs | itemWeightweightUnititemLengthitemWidthitemHeightdimensionUnitpackageWeightpackageLengthpackageWidthpackageHeight | Essential for shipping calculations, logistics, and catalog completeness |
| 📦 Box Contents | includedItems[] | Lists everything included with the product, useful for product page descriptions and bundle validation |
| 🖼 Images & Media | mainImageUrlimageUrls[]imageCounthasImageshasSecondaryImageshasVideoshas3DImages | Provides complete product media assets for catalogs or storefronts |
| ⭐ Reviews & Reputation | ratingreviewCounthasReviews | Helps evaluate product popularity and customer satisfaction |
| 🛡 Warranty & Protection | hasManufacturerWarrantymanufacturerWarrantyPeriodhasProtectionPlansprotectionPlanCountlowestProtectionPlanPricehasWarranty | Valuable for customer assurance signals and product comparisons |
| 🗂 Category Context | category1category2category3 | Useful for catalog categorization and product grouping |
| 🔍 SEO & URLs | productUrlcanonicalUrlshortUrlpageTitleseoShortDescription | Useful for linking, indexing, and referencing product pages |
| 🧾 Technical Specifications | specifications – Fully grouped specification table extracted from the product page | Provides the complete technical spec sheet for each product |
| 🧑💻 Metadata | scrapedAtrawPayloadVersion | Tracks scraping time and dataset versioning |
💡 All fields are normalized, nullable-safe, and structured for analytics pipelines, catalog systems, or product monitoring workflows.
📥 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,"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}],"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"}],"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
Scraping thousands of items at scale requires stable infrastructure. This tool handles the heavy lifting completely automatically:
- Built-in Anti-Blocking: The scraper automatically handles request timing, browser fingerprints, and residential proxy rotations to mimic real buyers. You don't need to buy or set up external proxies.
- Automatic Error Retries: If a page fails to load or hits a temporary network glitch, the tool automatically swaps sessions and retries the page so your run doesn't stop midway.
- Resume Interrupted Runs (Resurrect): If a massive job stops due to platform time limits or a manual pause, you can just click Apify's Resurrect Run button. The engine checks its saved history and continues exactly where it left off, ensuring you never pay twice for the same data.
❓ FAQ
Do I need coding skills to use this B&H scraper?
No. Non-technical users can run the tool directly from the Apify console dashboard by simply selecting a mode, pasting category URLs, or inputting a past Dataset ID. No development environment or custom code is required.
Is this an economical B&H product scraper?
Yes. The engine is structurally optimized for cost-efficiency, averaging roughly $2 per 1,000 processed products depending on your specific proxy usage and configuration. Shifting your routine runs to Update Existing mode dramatically minimizes runtime bills compared to standard category recrawlers.
Can I use this data directly for Shopify or other e-commerce platforms?
Yes. The extracted payload returns a clean, fully normalized data schema. The output can be exported instantly via the Apify API into standard JSON or CSV formats, making it ready for direct mapping into Shopify product imports, private databases, or ERP procurement tools.
How often should I run the update mode to monitor price and inventory?
For active multi-channel resellers, running the Update Existing pipeline once every 24 hours is the industry standard to maintain accurate margins on volatile price shifts, instant savings drops, and live stock availability status.
Does this tool require me to purchase external proxies?
No. All necessary request distribution, anti-block measures, and residential proxy rotations are completely handled internally by the Actor logic. You do not need to buy or configure any third-party proxy packages.
✉️ Custom Integrations & Business Automation
Need this data delivered directly into your existing business pipelines without dealing with raw JSON or CSV files? We provide custom backend integration setups tailored to your specific workflows:
- Live Google Sheets / Airtable Sync: Stream raw B&H product catalog updates into a clean, shared team spreadsheet automatically every morning.
- Direct E-Commerce Feed Injection: Push stock changes, instant savings drops, and updated pricing lists directly into your Shopify, WooCommerce, or custom storefront APIs.
- Real-Time Discord or Slack Alerts: Receive immediate instant-messaging notifications whenever specific inventory matches your pricing or target threshold metrics.
👉 Need a custom pipeline setup or specialized feature additions? Reach out directly via email at kamakrazeekaushik@gmail.com to discuss your project requirements.
🔗 Related Scrapers
- 🛍️ Meesho Search Results Scraper – Marketplace product listings and customer reviews
- 🚚 Blinkit Search Results Scraper – Quick-commerce pricing and availability
- ⚡ Zepto Product Scraper – Hyperlocal delivery intelligence