Skip to content

B&H Photo Scraper

Try for free

Scrape B&H Photo Video products from category, search, deals and product pages or keywords: prices, savings, real stock status, ratings, reviews, images, SKU, MPN, key features, and optionally UPC, specs and box contents.

📷 B&H Photo Scraper

Turn any B&H Photo Video category, search or deals page into a clean spreadsheet of products: prices, regular prices and savings, real stock status, ratings, reviews, images, SKU, B&H # and MFR # numbers, key features and category paths. Paste a URL or type a keyword and get 1,000 products in well under a minute, with no login and no setup, for $0.75 per 1,000 products.

✨ Why use B&H Photo Scraper?

  • ⚡ Fast: 28 products per page with parallel paging; 1,000 products took 22 seconds in our tests.
  • ✅ Correct stock status: reports what the store shows ("In Stock", "New Item - Coming Soon", "Temporarily Out of Stock"), not the placeholder text in the page source.
  • 🔎 URLs or keywords: categories, searches, deals, brand pages and product pages, or plain search terms. Broad words that B&H turns into a landing page still return products.
  • 🧾 Full product details on demand: UPC barcode, key specs, the full specification table, what is in the box, the editorial overview and product videos.
  • 🎛️ Filters built in: sort order, price range, minimum rating, brands, in stock only and on sale only. You only pay for products that match.
  • 💸 Cheap and simple: pay per saved product, no start fee, no subscription.

🎯 Use cases

  • 💲 Price monitoring: track B&H prices, instant savings and regular prices for cameras, lenses, audio and computer gear on a schedule.
  • 📦 Stock tracking: watch when new releases switch from "Coming Soon" to "In Stock" or when items go out of stock.
  • 🏷️ Competitive research: compare your catalogue against B&H by MFR # or UPC, find the best sellers and top-rated items in a category.
  • 🗂️ Catalogue building: collect names, brands, images, key features and specifications for product databases and comparison sites.
  • ⭐ Review analysis: rank products by rating and review count across brands and categories.

🚀 How to use

  1. Open a category, search or deals page on bhphotovideo.com and copy its URL, or think of the keywords you would type into the site's search bar.
  2. Paste the URLs into B&H Photo URLs and/or the keywords into Search terms.
  3. Set Max products (0 = everything) and, if you like, a sort order and filters.
  4. Turn on Include product details if you need UPC, specifications and box contents.
  5. Click Start and download the results as JSON, CSV, Excel or HTML, or read them through the API.

📥 Input

FieldWhat it does
startUrlsCategory (/c/buy/...), search (/c/search?q=...), deals, brand or product (/c/product/...) URLs of bhphotovideo.com
searchTermsKeywords, one search each
maxItemsProducts to save in total (0 = no limit)
sortThe site's sort orders: featured, best sellers, price, rating, newest, top deals...
minPrice, maxPrice, minRating, brands, inStockOnly, onSaleOnlyFilters; only matching products are saved and charged
includeDetailsOpen each product page for UPC, specs, box contents, overview and videos
maxItemsPerSourceOptional cap per URL or keyword
proxyConfigurationUS residential proxies by default (the site refuses datacenter connections)
{
  "startUrls": [{ "url": "https://www.bhphotovideo.com/c/buy/Digital-Cameras/ci/9811/N/4288586282" }],
  "searchTerms": ["sony fe lens"],
  "maxItems": 200,
  "sort": "BEST_SELLERS",
  "minPrice": 500,
  "inStockOnly": true
}

📤 Output

One row per product. The main fields:

FieldDescription
name, brand, brand_series_modelProduct name, brand, series and model
price, price_strikethrough, price_savings, savings_percentCurrent price, regular price and instant savings (USD)
in_stock, stock_availability, stock_messageStock status as the store shows it
rating, reviewsAverage rating and review count
sku, bhId, mpn, item_sourceB&H SKU, B&H #, manufacturer part number, new/used/refurbished source
category, category_pathListing category and the product's category breadcrumb
featured_image, imagesMain image and gallery images
selling_pointsKey features
used_price, rebates, shipping_message, financing_message, badgeOffers around the product
url, bitly_urlProduct page and B&H short link
position, page, search_term, source_url, scraped_atWhere and when the product was found
upc, key_specs, specifications, in_the_box, overview, videosWith Include product details or product URLs

Raw objects from the site (buying_options, quantity, shipping, store_info, financing, flags, condition_flags, notes) are included too, for anyone who needs every detail.

Example (from a real run, trimmed):

{
  "name": "Canon EOS R6 Mark II Mirrorless Camera",
  "brand": "Canon",
  "price": 1999,
  "currency": "USD",
  "price_strikethrough": 2299,
  "price_savings": 300,
  "savings_percent": 13,
  "category": "Digital Cameras",
  "category_path": [
    { "id": 9811, "name": "Digital Cameras", "url": "https://www.bhphotovideo.com/c/buy/Digital-Cameras/ci/9811/N/4288586282" },
    { "id": 16158, "name": "Mirrorless Cameras", "url": "https://www.bhphotovideo.com/c/buy/Mirrorless-Cameras/ci/16158/N/4288586281" }
  ],
  "in_stock": true,
  "stock_availability": "in_stock",
  "stock_message": "In Stock",
  "reviews": 478,
  "rating": 4.7,
  "featured_image": "https://www.bhphotovideo.com/images/fb/canon_eos_r6_mark_ii_1733214.jpg",
  "url": "https://www.bhphotovideo.com/c/product/1733214-REG/canon_eos_r6_mark_ii.html",
  "sku": 1733214,
  "item_source": "REG",
  "bhId": "CAER62",
  "mpn": "5666C002",
  "brand_series_model": "Canon EOS R6 Mark II",
  "selling_points": ["24.2MP Full-Frame CMOS Sensor", "4K60 10-Bit Internal Video, C-Log 3", "External 6K ProRes RAW Recording"],
  "used_price": 1749.95,
  "shipping_message": "FREE_NEXT_DAY",
  "position": 2,
  "page": 1,
  "source_url": "https://www.bhphotovideo.com/c/buy/Digital-Cameras/ci/9811/N/4288586282",
  "scraped_at": "2026-10-22T04:06:02.189Z"
}

With Include product details a row also has, for example:

{
  "upc": "018208016952",
  "key_specs": { "Lens Mount": "Nikon Z", "Effective Sensor Resolution": "45.7 Megapixel (8256 x 5504)", "Image Sensor": "Full-Frame" },
  "in_the_box": ["Nikon Z8 Mirrorless Camera", "Nikon EN-EL15c Lithium-Ion Battery (2280mAh)", "Nikon MH-25a Battery Charger"],
  "overview": "Built using flagship DNA, the Nikon Z8 is a compact, lightweight camera ..."
}

💰 Pricing

  • Product: $0.75 per 1,000 products ($0.00075 each).
  • Detailed product (with Include product details, and every product URL): $1.50 per 1,000 products, charged instead of Product, not on top.
  • No start fee. Platform usage (compute and the residential proxy traffic) is billed on top and is small: a 1,000-product run used about half a cent in our tests.

Example: 1,000 products from a category ≈ $0.75 + about $0.01 of usage.

❓ FAQ

Is it legal to scrape B&H Photo? The actor reads public product pages that anyone can open without an account. You are responsible for how you use the data and for following the site's terms and the laws that apply to you.

Do I need a login or my own proxy? No. No account is needed, and the actor uses US residential proxies by default because B&H refuses datacenter connections. If you pick other proxies and the site refuses them on every try, the actor switches to US residential proxies on its own.

How many products can I get? As many as the listings have: set Max products to 0 for everything. Each page holds 28 products and the actor follows the pages to the end. A search for "camera" alone lists over 60,000 products.

Why is a field empty? Fields are empty when B&H does not show them for that product: no reviews yet, no sale price, a price that is only shown in the cart (price_map_message), or no UPC on the product page.

Why did my search return a category? For broad words (for example "camera" or "tripod") B&H sends you to a category landing page instead of a result list. The actor detects that and runs the same words as an exact-phrase search, so you still get products, and it says so in the run's status message.

Can I schedule it or use it from my code? Yes. Create a schedule in the console to run it daily or hourly, or start runs and read the dataset through the API.

⚠️ Limits

  • Only the US store (bhphotovideo.com, prices in USD).
  • Customer review texts, questions and answers and accessory lists are not collected.
  • Price, rating, brand, stock and sale filters are applied by the actor. Filters you click on the site are kept for search URLs; on category pages use the actor's filters instead.
  • Top-level landing pages (for example a brand's home page) have no product list; the actor searches for their name instead (for brands, filtered to that brand).

Related actors

//From the blog\\

Latest articles

All articles
G2
4.7/5
Excellent
Trustpilot

The internet is full of data.
Start owning yours.

Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.

No credit card. No setup calls.