Booking.com Hotels Scraper avatar

Booking.com Hotels Scraper

Pricing

Pay per event

Go to Apify Store
Booking.com Hotels Scraper

Booking.com Hotels Scraper

Scrape hotel listings from Booking.com search results. Provide a destination, check-in/check-out dates, and number of guests to get hotel names, prices, ratings, review counts, room types, cancellation policies, and location data as a clean, structured dataset.

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Scrape hotel listings from Booking.com search results. Provide a destination, check-in/out dates, and number of guests to get hotel names, prices, ratings, review counts, room types, cancellation policies, and location data as a clean, structured dataset.

What it does

Given a destination city and date range, the actor searches Booking.com and returns all hotel listings from the search results page. Each record includes the hotel's name, URL, address, star rating, review score, nightly price, room type, and cancellation policy.

The actor uses a real Chromium browser (Playwright) to automatically solve Booking.com's AWS WAF JavaScript challenge and extract data after the page renders.

Use cases

  • Travel analytics and competitor pricing research
  • Hotel availability monitoring and rate tracking
  • Business travel planning datasets
  • Academic travel and hospitality research
  • Destination popularity and pricing trend analysis

Input

FieldTypeRequiredDescription
destinationstringYesCity, region, or address to search (e.g. "London", "Tokyo")
checkInstringYesCheck-in date in YYYY-MM-DD format
checkOutstringYesCheck-out date in YYYY-MM-DD format
adultsintegerNoNumber of adult guests (default: 2)
roomsintegerNoNumber of rooms (default: 1)
currencystringNoCurrency code for prices (default: USD)
languagestringNoLanguage code for hotel info (default: en-gb)
maxItemsintegerYesMaximum number of hotel records to return

Output

Each dataset item contains:

{
"hotel_id": "12345",
"name": "The Savoy",
"url": "https://www.booking.com/hotel/gb/the-savoy-london.en-gb.html",
"address": "Strand, London WC2R 0EZ",
"star_rating": 5,
"review_score": 9.2,
"review_count": 4823,
"review_category": "Exceptional",
"price_per_night": 450,
"currency": "USD",
"checkin_date": "2026-08-01",
"checkout_date": "2026-08-02",
"nights": 1,
"adults": 2,
"rooms_searched": 1,
"room_type": "Superior Room",
"cancellation_policy": "Free cancellation",
"breakfast_included": false,
"thumbnail_url": "https://cf.bstatic.com/xdata/images/hotel/...",
"latitude": 51.5106,
"longitude": -0.1201,
"scraped_at": "2026-08-01T00:00:00.000Z"
}

Technical notes

  • Uses Playwright (Chromium) with DataImpulse residential proxy to bypass Booking.com's AWS WAF protection
  • The AWS WAF JavaScript challenge resolves automatically in ~3-5 seconds
  • Each search returns up to ~25 hotel listings from the first results page
  • Recommended memory: 2048 MB (minimum 1024 MB)
  • Requires compatibility tier 2 (browser-rendered pages with residential proxy)