NCL Cruises Scraper — Itineraries, Cabin Prices & Deals
Pricing
from $4.00 / 1,000 results
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
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
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
- Click Try for free / Start.
- Pick your filters — destination, departure port, ship, dates, duration, cabin type (or leave them empty to scrape all available cruises).
- 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/enstorefront (EUR); the market is configurable.
🧭 Input
All fields are optional. Run with no input to scrape all available cruises.
| Field | Type | Description |
|---|---|---|
destinations | array | Destination regions, e.g. CARIBBEAN, ALASKA, MEDITERRANEAN. |
embarkationPorts | array | Departure port codes, e.g. MIA, TPA, BCN. |
ships | array | Ship codes, e.g. ENCORE, PRIMA, GEM. |
cabinTypes | array | INSIDE, OCEANVIEW, BALCONY, MINISUITE, SUITE, HAVEN. |
minNights / maxNights | integer | Cruise duration range, in nights. |
departureDateFrom / departureDateTo | string (YYYY-MM-DD) | Keep cruises with a sailing departing in this range. |
maxPrice | integer | Keep cruises with an available cabin at or below this price. |
guests | integer | Guests the prices are calculated for (default 2, 1–4). |
scrapeDetails | boolean | Visit each cruise's details page for images, ship/ports detail and the full price grid (default true). |
maxResults | integer | Maximum number of itineraries to store (default 100). |
baseUrl, marketPath | string | Storefront/market overrides. Defaults target https://www.ncl.com (fr/en). |
proxyConfiguration | object | Optional 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:
- MSC Cruises Scraper — Scrape MSC Cruises itineraries, cabin prices and deals.
- Booking.com Cruises Scraper — Extract cruise deals, prices and itineraries from Booking.com.
- Yelp Business Scraper — Scrape Yelp business listings, ratings and contact details.
- Email Validator — Validate and verify email addresses at scale.
📬 Need help or have a feature request? Contact us at support@vulnv.com or visit our Apify profile.