VOOZH about

URL: https://apify.com/automation-lab/booking-hotel-photos-scraper

⇱ Booking Hotel Photos Scraper β€” Gallery Image URLs Β· Apify


Pricing

Pay per event

Go to Apify Store

Booking Hotel Photos Scraper

Extract full public Booking.com hotel galleries into structured photo rows with image URLs, captions, hotel IDs, categories, and order.

Pricing

Pay per event

Rating

0.0

(0)

Developer

πŸ‘ Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

Extract full public photo galleries from Booking.com hotel pages. This actor accepts direct Booking.com hotel URLs and returns one dataset row per public image, including the hotel name, hotel ID, high-resolution image URL, thumbnail URL, caption, category, order, and scrape timestamp.

What does Booking Hotel Photos Scraper do?

Booking Hotel Photos Scraper turns public Booking.com hotel gallery pages into a structured image dataset. Instead of copying thumbnails manually, you can provide one or many hotel URLs and export clean rows for every gallery image the actor can see.

Who is it for?

  • 🏨 Hotel content teams checking how property media appears on Booking.com
  • ✈️ Travel affiliate publishers building destination pages
  • πŸ§‘β€πŸ’» OTA data teams monitoring property media coverage
  • πŸ“Š Market researchers comparing visual merchandising across hotels
  • πŸ”Ž SEO teams auditing hotel image assets and captions

Why use this actor?

Booking.com hotel pages often contain many public property photos, but broad hotel scrapers usually return only one representative image. This focused scraper is built for photo workflows where every gallery image matters.

What data can you extract?

FieldDescription
hotelUrlBooking.com hotel URL supplied in the input
hotelNameHotel name detected on the page
hotelIdBooking hotel identifier when available
photoUrlNormalized image URL
highResPhotoUrlBest high-resolution URL the actor can derive
thumbnailUrlOriginal thumbnail/source image URL when different
captionAlt text, title, or gallery caption when available
categoryGallery category or label when available
photoOrderPhoto order in the extracted gallery
sourcePageUrlActual page URL where the image was observed
imageHostImage host, usually bstatic.com
width / heightDimensions parsed from the Booking image URL when available
scrapedAtISO timestamp for the extraction

How much does it cost to scrape Booking hotel photos?

The actor uses pay-per-event pricing: a small run-start charge plus a per-photo charge for each saved dataset row. Keep maxItems low for first tests, then increase it for larger gallery exports after confirming the output matches your workflow.

How to use Booking Hotel Photos Scraper

  1. Open the actor on Apify.
  2. Paste one or more direct Booking.com hotel URLs into Booking hotel URLs.
  3. Set Maximum photos total and Maximum photos per hotel.
  4. Run the actor.
  5. Export the dataset as JSON, CSV, Excel, or through the Apify API.

Input example

{
"startUrls":[
{"url":"https://www.booking.com/hotel/gb/the-savoy.html"},
{"url":"https://www.booking.com/hotel/us/the-manhattan-at-times-square.html"}
],
"maxItems":100,
"maxPhotosPerHotel":80,
"language":"en-us",
"proxyCountryCode":"US",
"useResidentialProxy":false
}

Output example

{
"hotelUrl":"https://www.booking.com/hotel/gb/the-savoy.html?lang=en-us",
"hotelName":"The Savoy",
"hotelId":"280149",
"photoUrl":"https://r-xx.bstatic.com/xdata/images/hotel/max1280x900/example.webp",
"highResPhotoUrl":"https://r-xx.bstatic.com/xdata/images/hotel/max1280x900/example.webp",
"thumbnailUrl":"https://r-xx.bstatic.com/xdata/images/hotel/608x352/example.webp",
"caption":"The Savoy",
"category":"main",
"photoOrder":1,
"sourcePageUrl":"https://www.booking.com/hotel/gb/the-savoy.html",
"imageHost":"r-xx.bstatic.com",
"width":608,
"height":352,
"scrapedAt":"2026-06-26T02:41:25.988Z"
}

Supported URLs

Use direct Booking.com hotel detail URLs such as:

  • https://www.booking.com/hotel/gb/the-savoy.html
  • https://www.booking.com/hotel/us/the-manhattan-at-times-square.html
  • https://www.booking.com/hotel/fr/ritz-paris.html

Current limitations

The v1 actor intentionally avoids broad Booking.com search crawling. It does not discover hotels from a city query. Use our related Booking.com Scraper for search and hotel discovery, then pass selected hotel URLs into this photo scraper.

Tips for best results

  • Use direct hotel pages, not search result pages.
  • Start with 20–100 photos to validate output and cost.
  • Keep useResidentialProxy disabled first; enable it only if Booking.com challenges your URLs.
  • Use English language: "en-us" when you want English hotel names and captions.
  • Increase maxPhotosPerHotel for large luxury hotels with extensive galleries.

Integrations

You can connect the actor to:

  • Google Sheets for hotel media QA lists
  • Airtable for travel content planning
  • S3 or GCS for downstream image workflows
  • Data warehouses for competitive visual analysis
  • Apify webhooks for recurring hotel photo monitoring

API usage with Node.js

import{ ApifyClient }from'apify-client';
const client =newApifyClient({token: process.env.APIFY_TOKEN});
const run =await client.actor('automation-lab/booking-hotel-photos-scraper').call({
startUrls:[{url:'https://www.booking.com/hotel/gb/the-savoy.html'}],
maxItems:50
});
console.log(run.defaultDatasetId);

API usage with Python

from apify_client import ApifyClient
client = ApifyClient(token='YOUR_APIFY_TOKEN')
run = client.actor('automation-lab/booking-hotel-photos-scraper').call(run_input={
'startUrls':[{'url':'https://www.booking.com/hotel/gb/the-savoy.html'}],
'maxItems':50,
})
print(run['defaultDatasetId'])

API usage with cURL

curl-X POST 'https://api.apify.com/v2/acts/automation-lab~booking-hotel-photos-scraper/runs?token=YOUR_APIFY_TOKEN'\
-H'Content-Type: application/json'\
-d'{"startUrls":[{"url":"https://www.booking.com/hotel/gb/the-savoy.html"}],"maxItems":50}'

MCP usage

Use this actor from Claude Code or Claude Desktop through Apify MCP:

https://mcp.apify.com/?tools=automation-lab/booking-hotel-photos-scraper

Add the Apify MCP server in Claude Code:

$claude mcp add apify "https://mcp.apify.com/?tools=automation-lab/booking-hotel-photos-scraper"

Claude Desktop JSON configuration example:

{
"mcpServers":{
"apify":{
"url":"https://mcp.apify.com/?tools=automation-lab/booking-hotel-photos-scraper"
}
}
}

Example prompts:

  • β€œScrape all public photos from these Booking.com hotel URLs and return a CSV.”
  • β€œMonitor whether this hotel added new Booking.com gallery images.”
  • β€œCompare the number of gallery photos for these competitor hotels.”

Legal and ethical use

This actor extracts publicly visible hotel photo metadata and public image URLs from Booking.com pages. You are responsible for using the output in accordance with Booking.com terms, copyright law, and applicable data protection rules. Do not use the actor for private account data or restricted content.

Legality checklist

Use the scraper only for public hotel pages, respect Booking.com terms, avoid republishing copyrighted images without permission, and keep crawl volumes reasonable for your legitimate business workflow.

Troubleshooting

Why did I get zero photos?

Check that the input URL is a direct Booking.com hotel detail page. If the URL is valid but Booking.com challenges the run, enable useResidentialProxy and try a smaller maxItems value.

Why are captions missing?

Booking.com does not expose captions for every image. The actor fills captions from alt text, title attributes, or gallery labels when available.

Related scrapers

FAQ

Can it download image files?

The actor returns image URLs. You can use the dataset URLs in your own downloader, storage pipeline, or image processing workflow.

Can it scrape search results?

Not in v1. This actor is URL-based to keep the workflow focused, reliable, and cost-controlled.

Can I run it on hundreds of hotels?

Yes, but start with a small sample and scale gradually. Use maxItems and maxPhotosPerHotel to control spend.

Does it require login?

No. It is designed for public Booking.com hotel pages only.

Changelog

  • 0.1 β€” Initial URL-based Booking.com hotel photo gallery extractor.

Dataset quality notes

The actor de-duplicates images by normalized high-resolution URL. Thumbnail URLs are preserved when the source image differs from the normalized URL. Width and height are parsed from Booking/bstatic URL patterns when present.

Operational notes

Booking.com may vary page layout by locale, region, and WAF state. The actor uses Playwright and optional Apify Proxy settings to load public hotel pages and extract gallery images from rendered DOM content.

Need broader hotel data?

Use Booking.com Scraper first to discover hotels for a destination, export hotel URLs, then feed those URLs into this actor for full-gallery media extraction.

You might also like

Booking.com Scraper for Hotel Prices & Reviews

runtime/booking-scraper

Extract Booking.com hotel search results with prices, ratings, review counts, addresses, coordinates, direct hotel URLs, filters, and optional room details.

πŸ‘ User avatar

scraping automation

72

1.2

Booking.com Scraper - Hotel Prices & Reviews

logiover/booking-hotels-prices-scraper

Booking.com API alternative: scrape hotel prices, reviews & availability without an API key. Export Booking.com hotel data to CSV, JSON & Excel.

Booking.com Hotel Scraper

scrapepilot/booking-com-hotel-scraper

Extract comprehensive hotel data from Booking.com – property details, pricing, availability, guest reviews, amenities, and more

Fast Booking.com Scraper

crawlerbros/fast-booking-scraper

Fast, lightweight scraper for Booking.com hotel listings. Extract hotel names, prices, ratings, and basic details from search results.

Booking.com Hotel Photos Scraper

powerai/booking-hotel-photos-scraper

Export Booking.com property gallery URLs in one runβ€”photo IDs and image links for listings, creatives, and content ops.

Booking.com Hotel Scraper

crawlerbros/booking-hotel-scraper

Comprehensive scraper for Booking.com hotel listings. Extract prices, ratings, reviews, amenities, breakfast info, and more.

31

1.0

Booking Reviews Scraper

reviewly/booking-reviews-scraper

Scrapes reviews from Booking.com hotel pages

Fast Booking Scraper

voyager/fast-booking-scraper

Scrape Booking with this hotel scraper and get data about accommodation on Booking.com. Extract data by keywords or URLs for hotel prices, ratings, location, number of reviews, stars. Scrape and download data from Booking.com in JSON, Excel, HTML ,and CSV.

1.5K

2.3