Tui Hotels Search Scraper avatar

Tui Hotels Search Scraper

Pricing

from $2.00 / 1,000 results

Go to Apify Store
Tui Hotels Search Scraper

Tui Hotels Search Scraper

Scrape TUI.com hotel search results effortlessly. Extract prices, availability, hotel details, room units, and sourcing data for any destination and date range — perfect for travel analysts, price trackers, and OTA developers.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

Stealth mode

Stealth mode

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

TUI.com Hotels Search Scraper: Extract Hotel Deals & Pricing Data


What Is TUI.com?

TUI.com is one of Europe's largest travel and tourism platforms, offering package holidays, hotel-only bookings, and curated travel deals across hundreds of destinations worldwide. Its hotel search pages aggregate rich pricing and availability data — but extracting this manually is impractical at scale. The TUI.com Hotels Search Scraper automates this process, turning search result pages into structured, analysis-ready datasets.


Overview

The TUI Hotels Search Scraper collects hotel listings from TUI.com search result pages, capturing pricing, availability windows, room configurations, and sourcing metadata per offer. It is built for:

  • Travel analysts monitoring hotel pricing trends by destination
  • OTA developers aggregating multi-platform hotel inventory
  • Revenue managers benchmarking competitor rates
  • Data scientists building travel demand models

The scraper handles paginated search results up to a configurable item cap, and can process multiple search URLs in a single run with fault-tolerant URL handling.


Input Format

The scraper accepts a JSON configuration:

{
"ignore_url_failures": true,
"max_items_per_url": 200,
"urls": [
"https://www.tui.com/hotel/suchen/hotels/Dubai/1101/list/?searchScope=HOTEL&travellers=2&startDate=2026-05-30&endDate=2026-06-30&duration=7&regionGiataIds=133&destinations=160|REGION"
]
}
FieldTypeDescription
urlsarrayOne or more TUI.com hotel search result page URLs. Paste individually or use bulk edit. Each URL should reflect your desired destination, dates, traveller count, and duration — configured directly in the TUI search UI before copying.
max_items_per_urlintegerMaximum number of hotel offers to collect per URL. Default: 20. Set higher (e.g., 200) for broader market coverage.
ignore_url_failuresbooleanIf true, the scraper continues processing remaining URLs when one fails, rather than stopping the entire run. Recommended for bulk jobs.

Building Your Search URL

Construct the URL directly on TUI.com:

  1. Go to tui.com → select destination, dates, travellers, and duration
  2. Run the search and switch to List view
  3. Copy the full URL from your browser — it encodes all search parameters

Example URL parameters decoded:

ParameterExample ValueMeaning
travellers2Number of guests
startDate2026-05-30Check-in date
endDate2026-06-30Check-out date
duration7Trip length in nights
regionGiataIds133GIATA region ID for destination
destinations160|REGIONTUI internal destination code

Output Format

Sample Output Record

{
"partner": false,
"product_id": "DXB19010",
"hotel_id": "1248875",
"start_date": "2026-06-16",
"end_date": "2026-06-23",
"duration": 7,
"has_city_tax": false,
"price": {
"amount": 1783,
"formatted_amount": "1.783 €",
"currency_symbol": " €"
},
"price_per_person": {
"amount": 891,
"formatted_amount": "891 €",
"currency_symbol": " €"
},
"meta_offer": false,
"hotel": {
"name": "Address Beach Resort",
"geography": {
"coordinates": {
"lng": 55.1267,
"lat": 25.0723
},
"locations": [
{
"name": "Dubai, Marina",
"level": "RESORT",
"type": "RESORT"
},
{
"name": "V.A.E. Dubai",
"level": "REGION",
"type": "REGION"
},
{
"name": "Vereinigte Arabische Emirate",
"level": "COUNTRY",
"type": "COUNTRY"
}
],
"geo_breadcrumb": "Dubai, Marina, V.A.E. Dubai, Vereinigte Arabische Emirate",
"country_code": "AE",
"country_code3_l_c": "ARE"
},
"campaign": {
"icon": "https://www.tui.com/fileadmin/tuicom/campaigns/icons/welcome-back-icon-pt3.svg",
"label": "LAST MINUTE SALE",
"description": "• Flex Tarif buchbar\n• Reisen ab sofort bis 08.11.26",
"font_color": "#FFFFFF",
"background_color": "#D40E14",
"campaign_id": "CA07",
"icon_font_class_name": "reduced"
},
"rating": 5,
"holiday_check_rating": {
"percentage": 97.4,
"count": 127,
"rating": 5.8
},
"images": [
{
"alt": "Außenansicht",
"url": "https://cloud.tui.com/pics/hotel/resize:fill:[w]:[h]/aHR0cHM6Ly9waWNzLnR1aS5jb20vcGljcy9waWNzMTYwMHgxMjAwL3R1aS9mL2YzYzVjNTA2LWMzN2EtNGMyMi05NTAwLTIyMWFmZTZmZTk1OS5qcGc=",
"category": {
"code": "EXTERIOR_VIEW"
},
"rating": 5,
"season": {}
},
{
"alt": "Außenansicht",
"url": "https://cloud.tui.com/pics/hotel/resize:fill:[w]:[h]/aHR0cHM6Ly9waWNzLnR1aS5jb20vcGljcy9waWNzMTYwMHgxMjAwL3R1aS8yLzI1OTFkMTg5LTVkNDctNGE0Mi04OGJiLWFjMDFlY2M2NmQyMS5qcGc=",
"category": {
"code": "EXTERIOR_VIEW"
},
"season": {}
},
{
"alt": "Außenansicht",
"url": "https://cloud.tui.com/pics/hotel/resize:fill:[w]:[h]/aHR0cHM6Ly9waWNzLnR1aS5jb20vcGljcy9waWNzMTYwMHgxMjAwL3R1aS9iL2I0Yjk5YmZlLTU1ZWUtNGU5Zi05NDZiLWY5ZWNkZWUwNmM2ZC5qcGc=",
"category": {
"code": "EXTERIOR_VIEW"
},
"season": {}
},
{
"alt": "Außenansicht",
"url": "https://cloud.tui.com/pics/hotel/resize:fill:[w]:[h]/aHR0cHM6Ly9waWNzLnR1aS5jb20vcGljcy9waWNzMTYwMHgxMjAwL3R1aS83Lzc5YzI5NzY3LTQ4OTktNDQ2Ni1hOGVjLTZjYmRjMTNhZWMwYy5qcGc=",
"category": {
"code": "EXTERIOR_VIEW"
},
"season": {}
},
{
"alt": "Infinity Pool, 77th floor, 21yrs & above",
"url": "https://cloud.tui.com/pics/hotel/resize:fill:[w]:[h]/aHR0cHM6Ly9waWNzLnR1aS5jb20vcGljcy9waWNzMTYwMHgxMjAwL3R1aS84Lzg1MjI1ZjgzLTVmNzMtNGVhZS04OWMxLTI5MTEyZTRlYjVjNS5qcGc=",
"category": {
"code": "POOL"
},
"rating": 5,
"season": {}
}
],
"url": "/hotel/suchen/angebote/Address-Beach-Resort/1248875/offer/"
},
"units": [
{
"product_unit_id": "7CZG",
"supplier_room_id": "7CZ",
"unit_name": "DELUXE DOPPEL ZIMMER STADTBLICK",
"board_code": "G",
"board_name": "Frühstück",
"availability": 0,
"free_child": false
}
],
"sourcing": "TUR1",
"rate_type": "STANDARD",
"from_url": "https://www.tui.com/hotel/suchen/hotels/Dubai/1101/list/?searchScope=HOTEL&travellers=2&startDate=2026-05-30&endDate=2026-06-30&duration=7&regionGiataIds=133&destinations=160|REGION"
}

Each hotel offer yields a record with the following fields:

Offer Identification

FieldMeaning
PartnerTravel partner or operator providing this offer (e.g., TUI, third-party supplier)
Product IDUnique identifier for this specific travel product/package
Hotel IDUnique identifier for the hotel property
Meta OfferMetadata about the offer type or grouping (e.g., best-price flag, featured status)

Travel Details

FieldMeaning
Start DateCheck-in date for this offer
End DateCheck-out date for this offer
DurationNumber of nights

Pricing

FieldMeaning
PriceTotal price for all travellers for this offer
Price Per PersonPer-person breakdown of the total price
Has City TaxBoolean flag indicating whether city/tourist tax applies separately

Hotel & Room Data

FieldMeaning
HotelHotel name, rating, location, and core property metadata
UnitsAvailable room types or unit configurations for this offer (e.g., standard room, suite)

Sourcing & Rate

FieldMeaning
SourcingData source or booking channel for this offer
Rate TypePricing model (e.g., per person, all-inclusive, room-only)

Note: Nested fields like Hotel and Units may contain sub-objects. Flatten as needed for spreadsheet exports.


How to Use

  1. Build your search URL on TUI.com with the desired destination, dates, and traveller count, then switch to list view and copy the URL.
  2. Paste into urls — add multiple URLs for different destinations or date ranges in one run.
  3. Set max_items_per_url — use 200 for comprehensive market snapshots; lower values for quick tests.
  4. Enable ignore_url_failures: true for multi-URL runs to prevent one bad URL from halting the job.
  5. Export — download results as JSON or CSV for use in Excel, Google Sheets, or BI tools.

Tips:

  • Run separate URLs per destination for cleaner dataset segmentation
  • Use consistent duration values across URLs when comparing prices cross-destination
  • If results seem incomplete, verify the source URL returns results in a browser first

Use Cases & Business Value

  • Price monitoring: Track how TUI hotel rates fluctuate across booking windows
  • Competitive benchmarking: Compare TUI pricing against other OTAs for the same properties
  • Inventory research: Identify which hotel categories and rate types TUI favors in a region
  • Travel product development: Feed structured hotel data into custom travel recommendation engines

Conclusion

The TUI.com Hotels Search Scraper converts TUI's rich hotel search results into clean, structured data — covering pricing, availability, room types, and sourcing across any destination. Whether you're tracking rates or building a travel data pipeline, it delivers reliable output with minimal configuration.