VOOZH about

URL: https://apify.com/crawlerbros/cruisemapper-cruises-scraper-pro

โ‡ฑ CruiseMapper Cruises Scraper Pro ยท Apify


Pricing

from $1.00 / 1,000 results

Go to Apify Store

CruiseMapper Cruises Scraper Pro

Search CruiseMapper.com cruises by region, ship, line, port, length, date. Adds cruiseLineBlocklist, regionAllowlist, derived fields (nights, pricePerNightUsd), enrich-with-ship-data toggle. HTTP-only - no proxy, no cookies, no API key.

Pricing

from $1.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

a month ago

Last modified

Share

CruiseMapper Cruises Scraper

Search CruiseMapper.com โ€” the largest free public cruise database โ€” by destination, ship, cruise line, length, type, and date. Returns one structured record per cruise with departure date, ship, duration, route, title, and starting price. HTTP-only โ€” no proxy, no cookies, no API key.

What it does

You set any combination of filters; the actor:

  1. Submits the search to cruisemapper.com/cruise-search with your filters mapped to the site's form params.
  2. Walks paginated result pages (15 cruises per page) until maxResults is reached.
  3. Parses each result row into a flat record with date, ship, duration, route type, title, price, and ship-detail URL.
  4. Optionally narrows results by an endDate upper bound and cruiseLength bucket (client-side validation).

Empty fields are omitted (no nulls). Cruises without a published price still emit a record with priceFrom/currency absent.

Input

FieldTypeDefaultDescription
departureFromstringโ€“Earliest cruise departure date YYYY-MM-DD. Empty = no lower bound.
endDatestringโ€“Latest cruise departure date YYYY-MM-DD. Empty = no upper bound. Client-side filter.
cruiseLengthenumanyOne of any, 1-2, 3-5, 6-10, 11-14, 15+.
destinationenumanyCruise region (e.g. alaska, mediterranean-black-sea, bahamas-caribbean-bermuda, nile-river, arctic-antarctica, asia). 24 regions supported.
cruiseTypeenumanyTheme / category (e.g. transatlantic, christmas, food-wine, northern-lights, panama-canal, world). 25 types supported.
shipNamestringโ€“Substring match against the ship name (e.g. Symphony of the Seas).
cruiseLinestringโ€“Filter by cruise line (e.g. Royal Caribbean, Carnival).
departurePortstringโ€“Filter by embarkation port (e.g. Miami, Barcelona).
portOfCallstringโ€“Filter by intermediate port-of-call (e.g. Cozumel).
maxPriceinteger10000 (100โ€“100000)Drop cruises with starting price above this USD amount.
maxResultsinteger50 (1โ€“500)Hard cap on records emitted across all pages.
enrichWithShipDatabooleanfalseWhen true, fetch the ship-detail page for each unique ship and add a shipDetails block (year built, builder, gross tonnage, passenger capacity, length, decks, cabins). Adds ~1 extra HTTP request per unique ship.
startUrlsarray of strings[]Paste full CruiseMapper search URLs (e.g. https://www.cruisemapper.com/cruise-search?finder=cruise&portRegion=22). Each URL's query params become a search; results merge + dedup with the main filter inputs.
pageConcurrencyinteger1 (1โ€“10)Number of pages to fetch in parallel per query. Higher values speed up bulk runs; may trigger rate-limits.
cruiseLineBlocklistarray[]Pro. Drop cruises operated by any of these lines (case-insensitive substring). e.g. ["Celebrity", "Costa"].
regionAllowlistarray[]Pro. Only emit cruises whose route/region text contains one of these substrings. e.g. ["caribbean", "bahamas"].
minPriceUsdintegerโ€“Pro. Drop cruises with starting price below this USD amount.
minNightsintegerโ€“Pro. Drop cruises shorter than this many nights.
maxNightsintegerโ€“Pro. Drop cruises longer than this many nights.

Example input

{
"departureFrom":"2026-06-01",
"endDate":"2026-09-30",
"cruiseLength":"6-10",
"destination":"alaska",
"cruiseType":"any",
"maxResults":100
}

Output

One record per cruise. Empty fields are omitted (no nulls).

{
"departureDate":"2026-06-15",
"departureDateText":"2026 Jun 15",
"daysUntilDeparture":14,
"shipName":"AmaLilia",
"shipUrl":"https://www.cruisemapper.com/ships/AmaLilia-1340",
"duration":11,
"routeType":"round-trip",
"title":"Secrets of Egypt the Nile",
"priceFrom":6334,
"currency":"USD",
"nights":11,
"pricePerNightUsd":575.82,
"shipDetails":{
"yearBuilt":2024,
"builder":"Maasara Shipyard (Cairo, Egypt)",
"shipClass":"Nile River cruiser",
"speed":"9 kn / 17 km/h / 10 mph",
"lengthMeters":72,
"beamMeters":13,
"passengerCapacity":68,
"crewCount":62,
"deckCount":5,
"cabinCount":34
},
"scrapedAt":"2024-12-16T14:23:11+00:00"
}

Output fields

  • departureDate โ€” ISO date YYYY-MM-DD of departure (parsed from the table's free-form text).
  • departureDateText โ€” original date string from the page (e.g. "2026 Apr 27") โ€” useful for QA / verification.
  • daysUntilDeparture โ€” derived integer: days from now (UTC) to departureDate. Negative for departures in the past.
  • shipName โ€” vessel name as listed by CruiseMapper.
  • shipUrl โ€” direct link to the ship's CruiseMapper detail page (deck plans, photos, cabin info).
  • duration โ€” cruise length in days (parsed from "N days, ...").
  • routeType โ€” round-trip, one-way, open-jaw, or transatlantic when present in the title prefix.
  • title โ€” cruise itinerary title (e.g. "Secrets of Egypt the Nile", "Western Caribbean").
  • priceFrom โ€” starting USD price as integer; absent when CruiseMapper doesn't publish a price for the cruise.
  • currency โ€” USD / EUR / GBP; absent when priceFrom is absent.
  • shipDetails โ€” (only when enrichWithShipData: true) flat dict with yearBuilt, builder, shipClass, flagState, speed, lengthMeters, beamMeters, draftMeters, grossTonnage, passengerCapacity, crewCount, deckCount, cabinCount, decksWithCabins, engines, etc. Each ship is fetched once per run and cached.
  • nights โ€” derived integer: cruise length in nights (parsed from the duration string). Identical to duration for standard cruises.
  • pricePerNightUsd โ€” derived: priceFrom รท nights when both are available. Useful for comparing value across cruise lengths.
  • scrapedAt โ€” ISO-8601 UTC timestamp.

Use cases

  • Travel-planning aggregation โ€” feed your travel app with fresh CruiseMapper inventory.
  • Price-monitoring โ€” track starting-price trends for specific ships / cruise lines / destinations over time.
  • Competitive research โ€” see what competitors are pricing for the same routes.
  • Content / editorial โ€” generate weekly "Cruises departing this month from Miami" digests.
  • Inventory enrichment โ€” combine with a cruise-line site scraper to triangulate pricing across sources.

FAQ

Does it need a proxy or cookies? No. CruiseMapper search results are public and the actor connects directly with a Chrome-impersonated TLS fingerprint.

Why is priceFrom missing on some records? Roughly 30โ€“40% of CruiseMapper listings don't publish a starting price (they require contacting the cruise line). The actor follows an omit-empty contract โ€” fields not present on the source are simply absent from the record (no nulls).

Are the date / duration filters server-side or client-side? Mixed. departureFrom, cruiseLength, destination, cruiseType, shipName, cruiseLine, departurePort, portOfCall, and maxPrice are submitted as form params (server-side). endDate and the duration-bucket boundary check are applied client-side after parsing each result row, since CruiseMapper's form has no end-date field.

How many results can I get in one run? Up to maxResults (max 500). CruiseMapper paginates ~15 cruises per page; 500 records โ‰ˆ 34 pages ร— ~1.5s = under a minute on a clean run.

Can I scrape ship-detail pages too? This actor focuses on the search results table. Use the shipUrl field with a downstream actor (or a follow-up run) for ship deck plans, cabin layouts, and photos.

What if my filters return zero cruises? The run completes without fake rows and sets a status message explaining that no cruises matched the filters.

Why is the route type sometimes empty? CruiseMapper only embeds round-trip/one-way/open-jaw/transatlantic in the title for ~70% of cruises. When the title doesn't start with a known route-type prefix, the field is omitted.

You might also like

CruiseMapper Cruises Scraper

crawlerbros/cruisemapper-cruises-scraper

Search CruiseMapper.com for cruise itineraries by destination, ship, cruise line, departure port, length, and date. Returns ship name, dates, route, duration, and starting price per cruise.

11

Cruisemapper Cruises Scraper

vulnv/cruisemapper-cruises-scraper

The Cruisemapper Cruises Scraper extracts detailed cruise data, including ship names, itineraries, departure dates, prices, and more. Receive structured data in JSON, CSV, or Excel formats for travel planning, market research, or integration into applications.

CruiseMapper Scraper

solidcode/cruisemapper-scraper

[๐Ÿ’ฐ $1.5 / 1K] Extract cruise itineraries, passenger ships, and ports from CruiseMapper โ€” itinerary stops with dates, ship specs (capacity, year built, tonnage), and port schedules. Filter cruises by destination, dates, line, length, and price.

CruiseMapper Cruises Scraper

jungle_synthesizer/cruisemapper-cruises-scraper

Scrape cruise itineraries from CruiseMapper.com. Returns ship name, cruise line, departure date, itinerary description, duration, departure port, and starting price for each cruise sailing.

๐Ÿ‘ User avatar

BowTiedRaccoon

2

Cruisemapper Ships Scraper

vulnv/cruisemapper-ships-scraper

The Cruisemapper Ships Scraper extracts detailed ship data, including names, types, operators, capacities, and more, directly from Cruisemapper. Get structured, up-to-date information in JSON, CSV, or Excel formats for market research, travel planning, or application integration.

MSC Cruises Scraper

vulnv/msc-cruises-scraper

Search MSC Cruises sailings by destination, port, ship, date and duration, and extract full cruise details including day-by-day itineraries and pricing.

Tripadvisor (Cruises)

canadesk/tripadvisor-cruises

Get Cruises with advanced filters from Tripadvisor. It's fast and costs little.

๐Ÿ‘ User avatar

Canadesk Support

10

Cruisemapper Cruise Scraper

louisdeconinck/cruisemapper-cruise-scraper

Unlock the world of cruise data with our CruiseMapper Scraper! Perfect for travel agencies, researchers, and cruise enthusiasts, it effortlessly gathers detailed itineraries, ship specs, and pricing. Automate your data collection and stay ahead in the cruise industry with ease.

๐Ÿ‘ User avatar

Louis Deconinck

142

5.0

Celebrity Cruises Scraper - Complete Cruise Data Extractor

sercul/celebrity-cruises

Celebrity Cruises pricing API - 6 markets, ocean + river cruises, 17 destinations. Service charges included in prices (no hidden fees). Per-cabin pricing, direct booking links. Ideal for luxury travel affiliates and OTAs.

NCL Cruises Scraper โ€” Itineraries, Cabin Prices & Deals

vulnv/ncl-cruises-scraper

Scrape Norwegian Cruise Line (NCL) itineraries by destination, port, ship, date and duration. Extract full cruise details: sailing dates, ports of call, the complete stateroom price grid and deals.