NCL Cruises Scraper — Itineraries, Cabin Prices & Deals avatar

NCL Cruises Scraper — Itineraries, Cabin Prices & Deals

Pricing

from $4.00 / 1,000 results

Go to Apify Store
NCL Cruises Scraper — Itineraries, Cabin Prices & Deals

NCL Cruises Scraper — Itineraries, Cabin Prices & Deals

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.

Pricing

from $4.00 / 1,000 results

Rating

0.0

(0)

Developer

VulnV

VulnV

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

NCL Cruises Scraper

Search Norwegian Cruise Line (NCL) cruises and extract full itinerary details — ship, ports of call, sailing dates, duration and the complete stateroom price grid (Inside, Oceanview, Balcony, Club Balcony Suite, Suite, The Haven) — as clean, structured JSON.

The scraper mirrors the filters on the NCL vacations search (destination, departure port, ship, dates, duration, price and cabin type) and returns one record per itinerary.

🚀 How to use

  1. Click Try for free / Start.
  2. Pick your filters — destination, departure port, ship, dates, duration, cabin type (or leave them empty to scrape all available cruises).
  3. Run the Actor and download the results as JSON, CSV, Excel, HTML or via API.

✨ Features

  • 🔎 Full search filtering — destination, departure port, ship, departure date range, number of nights, max price, cabin type and guest count.
  • 🚢 Rich per-itinerary data — ship, embarkation port, ordered ports of call, duration, destination regions and every sailing date.
  • 💶 Complete stateroom pricing — lowest available price per cabin category across all sailings, plus per-sailing pricing for each stateroom type.
  • 🗓️ Details page scraping — for each cruise it visits the details page and adds the title, hero/map images, full ship and ports-of-call info, taxes & fees and the detailed stateroom price grid (base price, offers and availability per sailing).
  • 🔗 Detail page URL — a ready-to-open link to each cruise on ncl.com.
  • 🌍 Any NCL market — defaults to the fr/en storefront (EUR); the market is configurable.

🧭 Input

All fields are optional. Run with no input to scrape all available cruises.

FieldTypeDescription
destinationsarrayDestination regions, e.g. CARIBBEAN, ALASKA, MEDITERRANEAN.
embarkationPortsarrayDeparture port codes, e.g. MIA, TPA, BCN.
shipsarrayShip codes, e.g. ENCORE, PRIMA, GEM.
cabinTypesarrayINSIDE, OCEANVIEW, BALCONY, MINISUITE, SUITE, HAVEN.
minNights / maxNightsintegerCruise duration range, in nights.
departureDateFrom / departureDateTostring (YYYY-MM-DD)Keep cruises with a sailing departing in this range.
maxPriceintegerKeep cruises with an available cabin at or below this price.
guestsintegerGuests the prices are calculated for (default 2, 1–4).
scrapeDetailsbooleanVisit each cruise's details page for images, ship/ports detail and the full price grid (default true).
maxResultsintegerMaximum number of itineraries to store (default 100).
baseUrl, marketPathstringStorefront/market overrides. Defaults target https://www.ncl.com (fr/en).
proxyConfigurationobjectOptional proxy for outbound requests.

Example input

{
"destinations": ["CARIBBEAN"],
"minNights": 7,
"maxNights": 7,
"departureDateFrom": "2026-11-01",
"departureDateTo": "2027-03-31",
"scrapeDetails": true,
"maxResults": 50
}

📦 Output

Each dataset item is one itinerary. Abridged example:

{
"code": "GEM7TPABPIRTBCZMTPA",
"title": "7-day-caribbean-round-trip-tampa-harvest-caye-cozumel-and-roatan",
"shipCode": "GEM",
"shipName": "Norwegian Gem",
"duration": 7,
"embarkationPort": "TPA",
"destinations": ["Caribbean"],
"portsOfCall": ["TPA", "BPI", "RTB", "CZM", "TPA"],
"portsOfCallText": "Tampa, Florida → Harvest Caye, Belize → Roatán, Honduras → Cozumel, Mexico → Tampa, Florida",
"sailingsCount": 5,
"firstDeparture": "2026-11-21",
"lastDeparture": "2027-03-27",
"lowestPrice": 605,
"currency": "EUR",
"priceFromInside": 605,
"priceFromBalcony": 1100,
"priceFromTheHaven": 3870,
"detailUrl": "https://www.ncl.com/fr/en/cruises/7-day-caribbean-...-GEM7TPABPIRTBCZMTPA?itineraryCode=GEM7TPABPIRTBCZMTPA",
"sailings": [
{ "sailId": 61766, "departureDate": 1795237200000, "pricing": [ { "code": "INSIDE", "combinedPrice": 605 } ] }
],
"cruiseDetails": {
"title": "7-Day Caribbean Round-trip Tampa",
"ship": { "code": "GEM", "title": "Norwegian Gem" },
"portsOfCall": [ { "code": "TPA", "title": "Tampa, Florida" } ],
"sailings": [ { "sailId": 61766, "staterooms": [ { "code": "INSIDE", "combinedPrice": 605, "basePrice": 999 } ] } ]
}
}

The most useful detail facts (ship, ports, per-cabin "from" prices, departure dates) are flattened to the top level so they appear directly in the dataset table; the full nested details live under cruiseDetails. The dataset has two views: Overview (flat table) and Cruise details (full nested object).

💡 Use cases

  • Monitor NCL cruise prices and Free at Sea deals for specific routes or ships.
  • Build a cruise comparison or price-alerting tool.
  • Analyse itineraries, ports of call and sailing durations across a season.
  • Feed structured cruise data into a travel agency or affiliate site.

💳 Pricing

This Actor is monetized on a pay-per-result + usage basis: you pay a small fee per itinerary result, plus the Apify platform usage your run consumes. Runs are lightweight — direct API calls with no headless browser — so usage stays low. New users can try it on the Apify free tier (capped sample). See the Pricing tab for the current rate.

❓ FAQ

Is scraping NCL data legal? The Actor collects only publicly available information shown on the NCL website. Use the data responsibly and in line with applicable laws and the site's terms.

Which market is scraped? It defaults to the fr/en storefront (EUR). The marketPath and baseUrl inputs let you target other NCL markets (e.g. uk/en, us/en).

Can I get all cabin prices and the full itinerary? Yes — keep scrapeDetails enabled (the default). Each cruise then includes the full stateroom price grid and ports-of-call details.

🛠️ Our Other Scrapers

Explore our full suite of scraping tools to power your data needs:

📬 Need help or have a feature request? Contact us at support@vulnv.com or visit our Apify profile.