Wholesale Marine Scraper avatar

Wholesale Marine Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Wholesale Marine Scraper

Wholesale Marine Scraper

Scrape Wholesale Marine (wholesalemarine.com) - boat parts, propellers, covers, electronics, trailer parts, and outdoor gear. Search the full catalog by keyword, browse by category or brand, or fetch full product detail (price, SKU, brand, stock, images, description) from a direct product URL.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Scrape Wholesale Marine — a large online retailer of boat parts, marine electronics, trailer parts, watersports gear, and outdoor equipment. Search the entire catalog by keyword, browse any product category or brand, or pull rich product detail (price, SKU, brand, stock status, images, full description) straight from a product page URL.

No login, no API key, and no cookies are required — every mode works out of the box.

What this actor does

  • Keyword search — full-text product search across the entire catalog, just like the site's own search box.
  • Category browse — walk any of 200+ product categories (propellers, bimini tops, boat covers, engine parts, thermostats, solenoids, fuel filters, carburetor kits, and more) from the newest to the best-selling item.
  • Brand browse — pull every product from a specific brand (Yamaha, Mercury Mercruiser, Garmin, Attwood, Jabsco, TACO Marine, and 60+ others).
  • Direct product URL — feed in one or more exact product page URLs and get back the full product detail record (SKU, UPC/MPN, brand, stock quantity, gallery images, category breadcrumbs, and cleaned description).
  • Sorting — apply the site's own sort orders (featured, newest, best selling, price low→high, price high→low, name A→Z / Z→A) to any listing mode.
  • Price filtering — drop products outside a min/max USD price range.
  • Stock filtering — restrict to in-stock products (only meaningful on direct_product_url, since listing pages don't expose per-item stock status).
  • Ratings & reviews — average customer rating, total review count, and star breakdown for every product that has any (fetched from the store's own review widget; toggle off with includeRatings if not needed).
  • Every output field is only included when real data is available — no placeholder or "N/A" values.

Output per product

FieldTypePresent onDescription
productIdstringallInternal numeric product ID
titlestringallProduct name
brandstringbrand_browse, direct_product_urlManufacturer/brand name
brandUrlstring (URL)direct_product_urlLink to the brand's page on the site
skustringdirect_product_urlManufacturer/vendor SKU
upcstringdirect_product_urlUPC barcode, when a valid one is published
mpnstringdirect_product_urlManufacturer part number
gtinstringdirect_product_urlGlobal Trade Item Number, when valid
pricenumberallCurrent selling price (USD)
priceFormattedstringallPrice formatted as $X,XXX.XX
listPricenumberwhen on saleOriginal / list price (USD), only when higher than the current price
listPriceFormattedstringwhen on saleList price formatted
discountAmountnumberwhen on salelistPrice - price
discountPercentnumberwhen on saleDiscount percentage
currencystringallAlways USD
inStockbooleandirect_product_urlWhether the item is currently purchasable
stockQuantityintegerdirect_product_url (when published)Units currently on hand
descriptionstringallProduct blurb (listing) or full cleaned description (detail)
imageUrlstring (URL)listing modesListing thumbnail image
imagesarray of strings (URL)direct_product_urlFull-resolution gallery images
primaryImagestring (URL)direct_product_urlFirst/main gallery image
categoryPatharray of stringsdirect_product_urlBreadcrumb trail (e.g. ["Engine & Fuel", "Boat Propellers"])
categorySlugstringcategory_browseThe category slug used for this run
variantOptionsarray of objectsdirect_product_url (when the product has purchase options)Purchasable options such as Size or Color, e.g. {"name": "Size", "required": true, "values": ["S", "M", "L"]}. Color options rendered as unlabeled swatches (no text value on the page) are not included.
specificationsobjectdirect_product_url (when the product page publishes attribute specs)Key/value technical specs straight from the product page's own spec block — the exact keys vary by category (e.g. Material, Voltage, Style, Warranty Length, USCG Rating, Supplier Number, Fast Ship). Values already captured as sku/mpn/upc are not duplicated here.
ratingValuenumberwhen the product has reviewsAverage customer star rating (1–5)
reviewCountintegerwhen the product has reviewsTotal number of customer reviews
ratingDistributionobjectwhen the product has reviewsReview count per star, e.g. {"1": 2, "2": 1, "3": 0, "4": 4, "5": 57}
productUrlstring (URL)allCanonical product page URL
recordTypestringallAlways product
scrapedAtstring (ISO 8601)allUTC timestamp of when the record was scraped

Input

FieldTypeDefaultDescription
modeselectkeyword_searchkeyword_search / category_browse / brand_browse / direct_product_url
searchQuerystringpropellerFree-text query (mode=keyword_search)
categoryPathselectCategory to browse (mode=category_browse) — 200+ curated options
customCategoryPathstringAny category URL slug not in the dropdown (overrides categoryPath)
brandSlugselectBrand to browse (mode=brand_browse) — 60+ curated options
customBrandSlugstringAny brand URL slug not in the dropdown (overrides brandSlug)
productUrlsarray of stringsProduct page URLs to scrape (mode=direct_product_url)
sortOrderselectbestsellingfeatured / newest / bestselling / alphaasc / alphadesc / priceasc / pricedesc
minPriceintegerDrop products priced below this (USD)
maxPriceintegerDrop products priced above this (USD)
inStockOnlybooleanfalseOnly emit in-stock products (direct_product_url only)
includeRatingsbooleantrueFetch each product's rating/review count (adds one request per product)
maxItemsinteger20Hard cap on emitted records (1–1000)

Example: keyword search sorted by price

{
"mode": "keyword_search",
"searchQuery": "bilge pump",
"sortOrder": "priceasc",
"maxItems": 50
}

Example: browse a category

{
"mode": "category_browse",
"categoryPath": "boat-propellers",
"sortOrder": "bestselling",
"minPrice": 50,
"maxPrice": 300,
"maxItems": 100
}

Example: browse a brand not in the dropdown

{
"mode": "brand_browse",
"customBrandSlug": "CE-Smith",
"sortOrder": "alphaasc",
"maxItems": 50
}

Example: full detail for specific products

{
"mode": "direct_product_url",
"productUrls": [
"https://www.wholesalemarine.com/turning-point-hustler-3-blade-9x-9p-propeller-2111-0910/"
],
"inStockOnly": true
}

Use cases

  • Dropshipping & e-commerce — sync live prices, stock status, and images from Wholesale Marine to your own storefront.
  • Price monitoring — track price changes and discounts across an entire category or brand over time.
  • Competitor research — compare marine parts pricing and catalog breadth against other retailers.
  • Marketplace listing enrichment — pull SKUs, UPCs/MPNs, specs, and gallery images to populate marketplace listings.
  • Review/reputation analysis — aggregate rating distributions across a brand or category to spot standout products.
  • Boat parts sourcing — find every product from a specific brand or category without manually browsing the site.

FAQ

Is this affiliated with Wholesale Marine? No, this is a third-party actor using the publicly accessible wholesalemarine.com website. It is not affiliated with, endorsed by, or sponsored by Wholesale Marine.

Do I need a proxy or login? No. All modes work with the default Apify datacenter proxy group, and no account or cookies are required.

What's the difference between the listing modes and direct_product_url? keyword_search, category_browse, and brand_browse read the fast listing-page cards (title, price, thumbnail, short blurb). direct_product_url fetches the full product page for maximum detail — SKU, UPC/MPN, stock quantity, full gallery, and category breadcrumbs — but costs one request per product URL.

Can I browse a category or brand that isn't in the dropdown? Yes — use customCategoryPath or customBrandSlug with the exact URL slug from the site (e.g. the part between wholesalemarine.com/ and the trailing slash for categories, or between /brands/ and .html for brands).

Why is stockQuantity sometimes missing even in direct_product_url mode? Some products don't publish exact on-hand quantities on their page; only inStock (true/false) is guaranteed when the site exposes availability at all.

Why don't listing modes include stock status? Wholesale Marine's category/search/brand listing pages don't render a stock indicator on the product card — only the full product page does. Use direct_product_url if you need to filter by inStockOnly.

How current are the prices? Prices are scraped live on every run, straight from the page the actor requests.

Where do ratings come from? The store's on-page review widget renders client-side via JavaScript, but its data comes from a public review-summary endpoint that the actor queries directly (one extra request per product) so ratingValue, reviewCount, and ratingDistribution reflect the same real numbers shown on the site. Products with zero reviews simply omit these fields rather than show a fake 0.

Limitations

  • Stock quantity and in-stock status are only available in direct_product_url mode.
  • The categoryPath and brandSlug dropdowns cover the site's full stable taxonomy at the time of writing; use the corresponding custom* field for anything newer.
  • variantOptions only lists dropdown-style options (e.g. Size). Color options rendered as visual swatches with no text label on the page cannot be reported as real values, so they're omitted rather than guessed.