Booking.com Scraper
Pricing
Pay per usage
Booking.com Scraper
Scrape Booking.com hotel listings with ease. Extract prices, reviews, availability & ratings instantly. Perfect for price monitoring, travel market research, competitor analysis & accommodation data collection. Scale your data insights.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Shahid Irfan
Actor stats
1
Bookmarked
3
Total users
2
Monthly active users
7 days ago
Last modified
Categories
Share
Extract structured hotel listings from Booking.com search results. Collect property details, location data, ratings, pricing signals, and booking policy flags for market research, travel intelligence, and catalog building.
Features
- Hotel Listings Extraction - Collect listing cards from Booking search results URLs.
- Rich Property Data - Save identity, location, ratings, policy, and pricing-related fields.
- Pagination Support - Gathers hotels across multiple result pages.
- Duplicate Protection - Keeps unique hotels by property identity.
- Clean Dataset Output - Removes null and empty values automatically.
Use Cases
Travel Market Research
Build datasets to compare hotel supply, quality signals, and distribution in target cities.
Price and Position Monitoring
Track displayed prices, policy flags, and listing presentation changes over time.
Hospitality Competitor Analysis
Benchmark similar properties by ratings, review volume, and listing metadata.
Lead and Catalog Enrichment
Create structured hotel catalogs for internal tools, dashboards, and partner workflows.
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
startUrl | String | Yes | https://www.booking.com/searchresults.html?ss=London%2C+Greater+London%2C+United+Kingdom&group_adults=2&no_rooms=1&group_children=0 | Booking listing URL. Supports search results, city pages, and country pages. |
results_wanted | Integer | No | 20 | Maximum number of unique hotels to save. |
max_pages | Integer | No | 10 | Safety cap for paginated result pages. |
proxyConfiguration | Object | No | — | Optional proxy settings for reliability. |
Output Data
Each dataset item may include:
| Field | Type | Description |
|---|---|---|
hotelId | Integer | Unique Booking property ID. |
hotelName | String | Property display name. |
hotelUrl | String | Booking hotel page URL. |
searchLocation | String | Destination used in the search. |
city | String | Property city. |
countryCode | String | Property country code. |
starRating | Number | Hotel star classification. |
reviewScore | Number | Main review score. |
reviewCount | Integer | Total review count. |
displayPriceText | String | Listing price text shown to users. |
displayPriceAmount | Number | Numeric stay price amount when available. |
displayPriceCurrency | String | Currency for display price. |
freeCancellation | Boolean | Free cancellation availability flag. |
noPrepaymentNeeded | Boolean | Pay-later policy flag. |
isPreferred | Boolean | Preferred listing flag. |
isSustainable | Boolean | Sustainability flag. |
photoUrls | Array | Main listing photo URLs. |
Usage Examples
Basic Run
{"startUrl": "https://www.booking.com/searchresults.html?ss=London%2C+Greater+London%2C+United+Kingdom&group_adults=2&no_rooms=1&group_children=0","results_wanted": 20}
Higher Volume Collection
{"startUrl": "https://www.booking.com/searchresults.html?ss=London%2C+Greater+London%2C+United+Kingdom&group_adults=2&no_rooms=1&group_children=0","results_wanted": 150,"max_pages": 20}
Run With Residential Proxy
{"startUrl": "https://www.booking.com/searchresults.html?ss=London%2C+Greater+London%2C+United+Kingdom&group_adults=2&no_rooms=1&group_children=0","results_wanted": 60,"max_pages": 12,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Sample Output
{"searchUrl": "https://www.booking.com/searchresults.html?ss=London%2C+Greater+London%2C+United+Kingdom&group_adults=2&no_rooms=1&group_children=0&lang=en-us","searchLocation": "London, Greater London, United Kingdom","hotelId": 1929259,"hotelName": "Montcalm Royal London House, London City","hotelUrl": "https://www.booking.com/hotel/gb/the-montcalm-royal-london-house.html","city": "London","countryCode": "gb","starRating": 5,"reviewScore": 8.5,"reviewCount": 8880,"displayLocation": "Islington, London","freeCancellation": false,"noPrepaymentNeeded": false,"isPreferred": true,"isSustainable": true,"certifications": ["Green Key (FEE)"],"photoUrls": ["https://www.booking.com/xdata/images/hotel/square600/86639018.webp?k=e1b72e4ccb212a323edac7268163b4e0d24f79b93c0030fc3e078cfcecd673f0&o="]}
Tips for Best Results
Use Clean Search URLs
- Use Booking listing URLs from search results, city pages, or country pages.
- Keep destination and guest parameters in the URL.
Start Small
- Test with
results_wanted: 20first. - Scale up after confirming output quality.
Use Proxy for Stability
- Residential proxy often improves consistency on protected pages.
- Increase
max_pagesonly when needed.
Integrations
Connect your extracted dataset with:
- Google Sheets - Reporting and ad-hoc analysis.
- Airtable - Searchable hotel databases.
- Make - Automated workflows.
- Zapier - Trigger downstream actions.
- Webhooks - Push records to custom services.
Export Formats
- JSON - Developer workflows and pipelines.
- CSV - Spreadsheet analysis.
- Excel - Business reporting.
- XML - Legacy integrations.
Frequently Asked Questions
Can I scrape multiple destinations in one run?
Run one destination URL per actor run for predictable output.
Why are some fields missing?
Some listings do not expose every optional field. Empty values are removed from output.
How many hotels can I collect?
Set results_wanted and max_pages based on your target volume and runtime limits.
Does it remove duplicates?
Yes. Duplicate properties are filtered before saving.
Is proxy required?
Not always, but proxy usage is recommended for consistent runs.
Support
For bug reports or feature requests, use your repository issue tracker or Apify Console support channels.
Legal Notice
This actor is intended for lawful data collection and analysis. You are responsible for compliance with Booking terms, local regulations, and all applicable data usage rules.