Booking.com Scraper — Hotels, Prices & Reviews avatar

Booking.com Scraper — Hotels, Prices & Reviews

Pricing

from $5.00 / 1,000 results

Go to Apify Store
Booking.com Scraper — Hotels, Prices & Reviews

Booking.com Scraper — Hotels, Prices & Reviews

Scrape hotels, prices, ratings, and reviews from Booking.com. Search by destination + dates or extract detailed info from hotel URLs. Filters by stars, price range, property type, review score. Returns structured JSON with prices, discounts, availability, amenities, room types, and photos.

Pricing

from $5.00 / 1,000 results

Rating

0.0

(0)

Developer

Max Gor

Max Gor

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Booking.com Scraper

Scrape hotel data, prices, ratings, and reviews from Booking.com. Search by destination with dates or extract detailed property information from specific hotel URLs.

Features

  • Search mode: Find hotels by destination + check-in/check-out dates
  • Detail mode: Extract full property info from hotel URLs
  • Rich filters: Star rating, price range, property type, review score, sort order
  • Complete data: Prices, discounts, reviews, amenities, room types, photos, coordinates
  • Multi-currency: Get prices in any currency Booking.com supports (USD, EUR, GBP, etc.)
  • Multi-language: Results in any Booking.com language (en-us, de, fr, nl, etc.)
  • Pagination: Automatically scrapes multiple pages of search results
  • Anti-blocking: Powered by Crawlee — automatic fingerprint randomization, session pool with proxy rotation, block detection & retry

Input — Search Mode

FieldTypeDefaultDescription
modestringsearchSet to search
destinationstringrequiredCity, region, or hotel name
checkinstring+30 daysCheck-in date (YYYY-MM-DD)
checkoutstring+32 daysCheck-out date (YYYY-MM-DD)
adultsinteger2Number of adults
roomsinteger1Number of rooms
currencystringUSDCurrency code
maxPagesinteger5Max pages to scrape (~25 hotels/page)
sortBystringSort: price, distance, review_score_and_price, etc.
starsarrayFilter by stars, e.g. [4, 5]
minPriceintegerMin price per night
maxPriceintegerMax price per night
minReviewScoreintegerMin score: 60/70/80/90

Example Search Input

{
"mode": "search",
"destination": "Amsterdam, Netherlands",
"checkin": "2026-06-01",
"checkout": "2026-06-03",
"adults": 2,
"currency": "EUR",
"maxPages": 3,
"stars": [4, 5],
"sortBy": "review_score_and_price"
}

Input — Detail Mode

FieldTypeDescription
modestringSet to detail
urlsarrayList of Booking.com hotel URLs

Example Detail Input

{
"mode": "detail",
"urls": [
"https://www.booking.com/hotel/nl/waldorf-astoria-amsterdam.html",
"https://www.booking.com/hotel/nl/the-dylan-amsterdam.html"
]
}

Output — Search Results

Each hotel in search results includes:

FieldDescription
nameHotel name
urlDirect Booking.com link
priceTotal price for stay
price_currencyCurrency code
original_pricePrice before discount
discount_percentDiscount percentage
review_scoreGuest score (0-10)
review_countNumber of reviews
review_wordRating label (Superb, Very Good, etc.)
starsStar rating (1-5)
locationNeighborhood/area
distance_from_centerDistance from center
free_cancellationFree cancellation available
breakfast_includedBreakfast included
room_typeRecommended room type
imageMain photo URL

Output — Hotel Details

Detail mode returns comprehensive property data:

FieldDescription
hotel_idBooking.com hotel identifier (from URL)
descriptionHotel description (up to 1000 chars)
addressFull street address
cityCity name
countryCountry code (GB, NL, ES, etc.)
starsOfficial star rating (1-5, extracted from page data)
review_scoreOverall guest score (0-10)
review_countTotal number of reviews
review_wordRating label (Exceptional, Superb, Very Good, Good)
review_scoresPer-category scores: Facilities, Cleanliness, Comfort, Location, etc.
amenitiesPopular hotel facilities (Free Wifi, Pool, Parking, etc.)
imagesGallery photo URLs in max resolution
roomsRoom types with bed configurations and max occupancy
checkin_time / checkout_timeCheck-in/out times (e.g. "3:00 PM" / "11:00 AM")
property_typeHotel, Hostel, Apartment, B&B, etc.

Proxy Configuration

Booking.com has strong anti-bot protection. Residential proxies are recommended for reliable results:

{
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Cost Estimate

Using Apify residential proxies:

  • Search: ~$0.10-0.15 per page (25 hotels)
  • Detail: ~$0.05-0.10 per hotel page
  • Typical run (5 pages, 125 hotels): ~$0.50-0.75

How It Works

This actor uses Crawlee PlaywrightCrawler with:

  • Browser fingerprint randomization — each request uses a unique browser fingerprint
  • Session pool — automatic proxy/session rotation when blocks are detected
  • Smart retries — blocked requests are retried with fresh sessions (up to 6 attempts)
  • 404 detection — non-existent hotel pages are reported cleanly without wasting retries

Tips

  1. Dates matter: Prices vary significantly by dates. Always specify check-in/check-out.
  2. Use filters: Star rating and price filters reduce pages and speed up scraping.
  3. Residential proxies: Datacenter proxies get blocked quickly by Booking.com.
  4. Currency: Set currency to avoid conversion issues — Booking.com returns prices in the selected currency.
  5. Memory: Search mode works with 2 GB. Detail mode with multiple hotels may need 4 GB.