Marriott Hotel Search Scraper
Pricing
Pay per usage
Marriott Hotel Search Scraper
Scrape hotel data from Marriott International properties worldwide using Marriott’s internal GraphQL API. Extract hotel names, addresses, phone numbers, ratings, reviews, brand info, and coordinates. Supports activity-based filtering and all global regions.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
ScrapySpider
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Marriott Hotel Search
Scrapes all Marriott hotel properties worldwide from Marriott's internal GraphQL API. Collects hotel details including address, phone number, ratings, reviews, brand information, and geographic coordinates.
Features
- Scrapes all 11 global regions: United States, Canada, Europe, Asia, Africa, Australia & Pacific Islands, Caribbean, Central America, Mexico, Middle East, and South America
- Extracts detailed hotel profile data (address, phone, coordinates)
- Handles both
marriott.comandritzcarlton.comproperty pages - Supports filtering by activity type (beach, casino, family, spa, golf, tennis, ski)
- Automatic pagination across all regions
Input
| Field | Type | Description |
|---|---|---|
activities | Array of strings | Optional. Filter hotels by activity type. Values: beach, casino, family, spa, golf, tennis, ski. Leave empty to scrape all hotels. |
Example Input
{"activities": ["beach", "spa"]}
Output
Each hotel record contains:
| Field | Description |
|---|---|
hotelURL | Full URL to the hotel's overview page |
hotelName | Hotel name |
marriottBrandId | Marriott brand code (e.g., "MC", "RZ") |
marriottBrand | Brand name (e.g., "Marriott Hotels", "The Ritz-Carlton") |
propertyCode | Unique Marriott property identifier |
userRatings | Star rating from guest reviews |
userReviews | Number of guest reviews |
hotelStreetAddress | Street address |
hotelCity | City |
hotelState | State/province |
hotelCountry | Country |
hotelPhone | Phone number |
hotelPostalCode | Postal/ZIP code |
hotelLatitude | Geographic latitude |
hotelLongitude | Geographic longitude |
Example Output
{"hotelURL": "https://www.marriott.com/en-us/hotels/nyces-jw-marriott-essex-house-new-york/overview/","hotelName": "JW Marriott Essex House New York","marriottBrandId": "ER","marriottBrand": "JW Marriott","propertyCode": "NYCES","userRatings": 4.5,"userReviews": 1200,"hotelStreetAddress": "160 Central Park South","hotelCity": "New York","hotelState": "NY","hotelCountry": "US","hotelPhone": "+1 212-247-0300","hotelPostalCode": "10019","hotelLatitude": "40.7661","hotelLongitude": "-73.9791"}
How It Works
- Queries Marriott's GraphQL API (
phoenixShopPropertiesByDestination) for each of the 11 global regions - Paginates through all results (100 hotels per page)
- Visits each hotel's overview page to extract address and contact details
- Handles Ritz-Carlton properties separately (different domain)
Cost
The Actor scrapes ~9,000+ hotels worldwide. A full run typically uses around 0.5–1.0 compute units on the Apify platform.