Princess Scraper - Complete Cruise Data Extractor avatar

Princess Scraper - Complete Cruise Data Extractor

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Princess Scraper - Complete Cruise Data Extractor

Princess Scraper - Complete Cruise Data Extractor

Princess Cruises pricing API - 9 markets (US, UK, Australia, Japan, plus Italy, Germany, Austria, France & Netherlands) each in local currency (USD/GBP/AUD/JPY/EUR). Cabin-level prices AND live availability counts for every category: Interior, Oceanview, Balcony, Mini-Suite, Suite.

Pricing

from $1.00 / 1,000 results

Rating

5.0

(1)

Developer

Jeremy G

Jeremy G

Maintained by Community

Actor stats

2

Bookmarked

25

Total users

5

Monthly active users

2 days ago

Last modified

Categories

Share

Princess Cruises Scraper — Complete Cruise Data Extractor

Extract cruise listings, itineraries, and cabin-level pricing from Princess Cruises across 6 international markets, each in its local currency. Built for travel agencies, price comparison sites, affiliate marketers, and analysts.

Why Choose This Scraper?

  • ✅ Extract from 6 Princess Cruises markets (US, UK, Australia, Japan, Italy, Germany) with local-currency pricing
  • ✅ Complete cruise data with cabin-level pricing across available priced cabin categories (Interior, Oceanview, Balcony, Mini-Suite, Suite)
  • ✅ Per-sailing records — one row per departure date, with departure/arrival ports, dates, and duration
  • ✅ Day-by-day itinerary from Princess's own schedule: every port and sea day with its day number
  • ✅ Direct source URLs on every sailing — ready for affiliate monetization
  • ✅ Availability status and per-cabin availability signals

Updates

  • 2026-10-21 — Australia (en_AU, AUD) is collected daily again; all 6 markets now refresh every day.
  • 2026-07-24 — New markets added: Italy (it_IT) and Germany (de_DE), both EUR.
  • 2026-06-11 — New market added: Japan (ja_JP, JPY).

Use Cases

  • Travel agencies & OTAs — track Princess pricing against competitors daily
  • Affiliate/comparison sites — populate Princess inventory with deep-links
  • Price analysts — monitor Princess fare curves for forecasting
  • Internal benchmarking — cruise lines comparing against Princess positioning

Supported Markets

RegionMarketOutput Currency
en_USUnited StatesUSD
en_GBUnited KingdomGBP
en_AUAustraliaAUD
ja_JPJapanJPY
it_ITItalyEUR
de_DEGermanyEUR

EU pricing is uniform across the Eurozone, so it_IT and de_DE serve as the EUR representatives.

Input

ParameterTypeDescriptionDefault
region*stringMarket to scrape (en_US, en_GB, en_AU, ja_JP, it_IT, de_DE)en_US
maxRowsnumberMaximum cruise results (1–3000)500
maxRequestRetriesnumberRetries for failed requests (1–10)5
requestHandlerTimeoutSecsnumberRequest timeout in seconds (10–300)30
useApifyProxybooleanUse Apify Residential proxyfalse
proxyUrlstringCustom proxy URL (http://user:pass@host:port)—
apifyProxyGroupsstring[]Apify proxy groups["RESIDENTIAL"]
apifyProxyCountryCodestringOverride proxy country (e.g., US, GB)Auto
useSessionPoolbooleanSession pool for automatic proxy rotation on errorstrue

Cabin Codes

Princess uses 39+ raw cabin-category codes, which the scraper groups into five standard cabin types. Per-cabin price fields carry the raw category code (e.g., price_USD_IB).

Cabin TypeExample Codes
InteriorIB, IC, ID, IE, IF
OceanviewO3, OC, OV, OW, OZ
BalconyBB, BC, BD, D4, DC (Deluxe Balcony)
Mini-SuiteM1, MB, MC, C1 (Club Class Mini-Suite)
SuiteS0, S2, S4, S5, S6

Output

Each record is a single sailing with:

  • Cruise and itinerary identifiers (cruiseId, itineraryId)
  • Ship name (shipName), departure and arrival ports (name + code)
  • Departure and arrival dates in ISO format (departureDate, arrivalDate) and duration (nights)
  • Lowest available per-person price with amount and currency
  • All prices are per person and include taxes, fees and port expenses in every market (US, UK, Australia, Japan, Italy, Germany), so fares are directly comparable across markets
  • Every day of the itinerary in order (portsList[].portName, portsList[].dayIndicator): day 1 is embarkation, sea days are listed as At Sea, and two stops on the same day share a day number. portsList[].daySource is line when the days come from Princess's own schedule. For the occasional sailing where that schedule isn't available (some voyages crossing the International Date Line), the ports are listed in order with an empty dayIndicator and daySource unknown
  • Dynamic per-cabin price fields: price_{CURRENCY}_{CABINCODE} (e.g., price_USD_IB, price_USD_BB)
  • Per-cabin availability signals (availability_*, availableCabins_*)
  • Availability status (availabilityStatus)
  • source_url — direct link to the sailing page for deep-linking / affiliate tracking
  • platform, company, locale — for multi-market deduplication

Sample Output

{
"cruiseId": "V612",
"itineraryId": "MEDGEM7",
"company": "princess",
"locale": "en_US",
"platform": "princess-en_US",
"title": "7-Day Mediterranean",
"shipName": "Sun Princess",
"departureDate": "2026-09-12",
"arrivalDate": "2026-09-19",
"duration": "7",
"price": { "amount": "1099", "currency": "USD" },
"price_USD_IB": "1099",
"price_USD_OV": "1349",
"price_USD_BB": "1699",
"price_USD_MB": "2049",
"price_USD_S4": "3899",
"portsList": [
{ "portName": "Barcelona", "dayIndicator": "1", "daySource": "line" },
{ "portName": "Marseille", "dayIndicator": "2", "daySource": "line" },
{ "portName": "At Sea", "dayIndicator": "3", "daySource": "line" },
{ "portName": "Naples", "dayIndicator": "4", "daySource": "line" },
{ "portName": "Rome (Civitavecchia)", "dayIndicator": "5", "daySource": "line" },
{ "portName": "Florence/Pisa (Livorno)", "dayIndicator": "6", "daySource": "line" },
{ "portName": "Genoa", "dayIndicator": "7", "daySource": "line" },
{ "portName": "Barcelona", "dayIndicator": "8", "daySource": "line" }
],
"availabilityStatus": "Available",
"currency": "USD",
"source_url": "https://www.princess.com/itinerary-details/?voyageCode=V612"
}

Runtime & Cost

  • Typical run: a few minutes for 500 rows
  • Larger sweeps: scale with maxRows (up to 3000)
  • Memory: default is sufficient for typical runs
  • Proxy: optional; set useApifyProxy: true (Residential) if you hit request errors

Usage

{
"region": "en_US",
"maxRows": 200,
"useApifyProxy": true
}

Notes

  • Princess prices are per-person, double-occupancy
  • One record is emitted per sailing (departure date)
  • EU markets (it_IT, de_DE) return uniform Eurozone fares in EUR
  • For affiliate tracking, append your affiliate parameters to source_url on the consuming side

Looking to build a full cruise pricing dataset? Pair this with:

  • Royal Caribbean Scraper — 6 markets, per-cabin pricing
  • Norwegian (NCL) Scraper — 10 markets, enrichable details
  • Celebrity Cruises Scraper — 8 markets, service charges included
  • Carnival Cruises Scraper — 2 markets, high volume
  • MSC / Costa / Disney / Holland America Scrapers — full coverage

Support

Issues or custom requests? Email support@track.cruises.