AI Google Hotel Scraper

by khalidd3v

Advanced Google Hotels Scraper with AI-Powered Data Extraction Extract comprehensive hotel data from Google Hotels using our AI-enhanced scraper. Perf...

10 runs
2 users
Try This Actor

Opens on Apify.com

About AI Google Hotel Scraper

Advanced Google Hotels Scraper with AI-Powered Data Extraction Extract comprehensive hotel data from Google Hotels using our AI-enhanced scraper. Perfect for travel agencies, price comparison platforms, market researchers, and booking services.

What does this actor do?

AI Google Hotel Scraper is a web scraping and automation tool available on the Apify platform. It's designed to help you extract data and automate tasks efficiently in the cloud.

Key Features

  • Cloud-based execution - no local setup required
  • Scalable infrastructure for large-scale operations
  • API access for integration with your applications
  • Built-in proxy rotation and anti-blocking measures
  • Scheduled runs and webhooks for automation

How to Use

  1. Click "Try This Actor" to open it on Apify
  2. Create a free Apify account if you don't have one
  3. Configure the input parameters as needed
  4. Run the actor and download your results

Documentation

Google Hotel Scraper - Apify Actor An advanced Python scraper for Google Hotels designed to run on Apify platform. This scraper extracts comprehensive hotel data including ratings, prices, contact details, amenities, reviews, and more. ## Features ### 🔍 Search & Filtering - Location-based search: Search hotels by location, city, or hotel name - Date range filtering: Filter by check-in and check-out dates - Guest & room configuration: Specify number of guests and rooms - Rating filtering: Filter hotels by minimum and maximum ratings (0-5 stars) - Price filtering: Set minimum and maximum price ranges - Currency support: Support for multiple currencies (USD, EUR, GBP, etc.) - Sorting options: Sort by relevance, price (low to high), price (high to low), or rating ### 📊 Data Extraction - Basic information: Hotel name, address, rating, review count - Pricing: Current price, price per night, currency - Contact details: Website, phone number, email (when available) - Amenities: List of hotel amenities and facilities - Images: Hotel images (optional) - Reviews: Customer reviews (optional) - Description: Hotel description and details ### 📈 Price Tracking - Price history: Track price changes over time - Date-specific tracking: Track prices for specific check-in/check-out dates - Historical data: Store price history for analysis ### ⚙️ Advanced Options - Headless mode: Run browser in headless mode - Custom timeouts: Configure wait times for page elements - Result limits: Control maximum number of results - Proxy support: Built-in proxy configuration support ## Getting Started ### Using on Apify Store This actor is available on the Apify Store. Simply: 1. Find the Actor: Search for "Google Hotel Scraper" on the Apify Store 2. Run the Actor: Click "Try for free" or "Run" button 3. Configure Input: Enter your search parameters in the input form 4. Get Results: Download your results from the Dataset (JSON) or Key-Value Store (CSV) No installation or setup required - just run and pay per usage! ### For Developers If you want to run this locally for development or testing: 1. Install dependencies: bash pip install -r requirements.txt playwright install chromium 2. Set up local storage: bash export APIFY_LOCAL_STORAGE_DIR=./apify_storage mkdir -p apify_storage/key_value_stores/default 3. Create input file: bash cp example_input.json apify_storage/key_value_stores/default/INPUT.json 4. Run locally: bash python src/main.py ## Input Schema The scraper accepts the following input parameters: ### Required - searchQuery (string): Hotel name, location, or search term (e.g., "hotels in Paris", "Marriott New York") ### Optional #### Search Parameters - location (string): Specific location or city name - checkInDate (string): Check-in date in YYYY-MM-DD format - checkOutDate (string): Check-out date in YYYY-MM-DD format - guests (integer): Number of guests (default: 2, min: 1, max: 10) - rooms (integer): Number of rooms (default: 1, min: 1, max: 10) #### Filtering - minRating (number): Minimum hotel rating 0-5 (default: 0) - maxRating (number): Maximum hotel rating 0-5 (default: 5) - minPrice (number): Minimum price per night (default: 0) - maxPrice (number): Maximum price per night (default: null) - currency (string): Currency code - USD, EUR, GBP, etc. (default: "USD") - sortBy (string): Sort results by - "relevance", "price_low", "price_high", "rating" (default: "relevance") #### Extraction Options - extractContactDetails (boolean): Extract email, website, and phone number (default: true) - extractReviews (boolean): Extract hotel reviews (default: false) - extractAmenities (boolean): Extract hotel amenities (default: true) - extractImages (boolean): Extract hotel images (default: false) #### Price Tracking - trackPrices (boolean): Track price changes over time (default: false) - priceTrackingDays (integer): Number of days to track prices (default: 7, min: 1, max: 30) #### Advanced - maxResults (integer): Maximum number of hotels to scrape (default: 50, min: 1, max: 500) - headless (boolean): Run browser in headless mode (default: true) - waitForSelectorTimeout (integer): Timeout for waiting for selectors in milliseconds (default: 30000, min: 1000, max: 120000) - proxyConfiguration (object): Proxy configuration for the scraper (default: {}) ## Output Format The scraper provides data in two formats: ### 1. JSON Dataset (Default) Results are pushed to the Apify dataset as JSON objects. ### 2. CSV Export Results are also saved as hotels.csv in the Key-Value Store for easy analysis in Excel or other tools. The scraper outputs an array of hotel objects with the following structure: json { "scrapedAt": "2024-01-15T10:30:00", "url": "https://www.google.com/travel/hotels/...", "name": "Hotel Name", "rating": 4.5, "reviewCount": 1234, "price": 150, "pricePerNight": 150, "currency": "USD", "address": "123 Main St, City, Country", "location": {}, "images": ["https://..."], "amenities": ["Wi-Fi", "Pool", "Parking"], "contactDetails": { "website": "https://hotelwebsite.com", "phone": "+1-234-567-8900", "email": "info@hotel.com" }, "reviews": [ { "text": "Great hotel!", "extractedAt": "2024-01-15T10:30:00" } ], "description": "Hotel description...", "checkInDate": "2024-02-01", "checkOutDate": "2024-02-05", "guests": 2, "rooms": 1, "priceHistory": [ { "price": 150, "date": "2024-01-15T10:30:00", "checkInDate": "2024-02-01", "checkOutDate": "2024-02-05" } ] } ### CSV Output The CSV file includes the following columns: - name, url, rating, reviewCount, price, pricePerNight, currency - address, checkInDate, checkOutDate, guests, rooms - website, phone, email (from contactDetails) - amenities (comma-separated), images (comma-separated), description - scrapedAt Access the CSV file from the Key-Value Store in your Apify run results. ## Usage Examples ### Basic Search json { "searchQuery": "hotels in New York" } ### Search with Dates and Filters json { "searchQuery": "hotels in Paris", "checkInDate": "2024-06-01", "checkOutDate": "2024-06-05", "guests": 2, "rooms": 1, "minRating": 4.0, "maxPrice": 200, "currency": "EUR" } ### Advanced Search with All Features json { "searchQuery": "Marriott hotels", "location": "London", "checkInDate": "2024-07-01", "checkOutDate": "2024-07-07", "guests": 4, "rooms": 2, "minRating": 4.5, "maxRating": 5.0, "minPrice": 100, "maxPrice": 500, "currency": "GBP", "sortBy": "rating", "maxResults": 100, "extractContactDetails": true, "extractReviews": true, "extractAmenities": true, "extractImages": true, "trackPrices": true, "priceTrackingDays": 14 } ## Running on Apify ### Via Apify Store (Recommended) 1. Go to the Apify Store and search for "Google Hotel Scraper" 2. Click on the actor to view details 3. Click "Try for free" or "Run" button 4. Enter your input parameters 5. Click "Start" to run 6. Download results from Dataset (JSON) or Key-Value Store (CSV) ### Via Apify API You can also run the actor programmatically using the Apify API: javascript const apifyClient = require('apify-client'); const client = new apifyClient.ApifyClient({ token: 'YOUR_API_TOKEN', }); const run = await client.actor('YOUR_ACTOR_ID').call({ searchQuery: 'hotels in New York', maxResults: 50, extractContactDetails: true }); // Get results const { items } = await client.dataset(run.defaultDatasetId).listItems(); ### Environment Variables No special environment variables are required. The scraper uses Apify's built-in Actor SDK for data storage and logging. ## Troubleshooting ### Common Issues 1. No results found: - Check if the search query is valid - Verify that hotels exist for the specified location - Try adjusting filters (ratings, prices) 2. Timeout errors: - Increase waitForSelectorTimeout value - Check internet connection - Verify Google Hotels is accessible 3. Missing data: - Some hotels may not have all information available - Try enabling extractContactDetails and extractReviews for more data - Google Hotels structure may change - selectors may need updates 4. Rate limiting: - The scraper includes built-in rate limiting - If issues persist, add delays between requests - Consider using proxies ## Project Structure google-hotel-scraper/ ├── src/ │ └── main.py # Main scraper code ├── .actor/ │ ├── actor.json # Apify actor configuration │ ├── INPUT_SCHEMA.json # Input schema definition │ └── input.json # Example input ├── requirements.txt # Python dependencies ├── Dockerfile # Docker configuration └── README.md # This file ## License This project is provided as-is for educational and commercial use. ## Support For issues, questions, or contributions, please open an issue on the repository. ## Changelog ### Version 1.0.0 - Initial release - Basic hotel scraping functionality - Rating and price filtering - Contact details extraction - Price tracking support - Apify integration

Common Use Cases

Market Research

Gather competitive intelligence and market data

Lead Generation

Extract contact information for sales outreach

Price Monitoring

Track competitor pricing and product changes

Content Aggregation

Collect and organize content from multiple sources

Ready to Get Started?

Try AI Google Hotel Scraper now on Apify. Free tier available with no credit card required.

Start Free Trial

Actor Information

Developer
khalidd3v
Pricing
Paid
Total Runs
10
Active Users
2
Apify Platform

Apify provides a cloud platform for web scraping, data extraction, and automation. Build and run web scrapers in the cloud.

Learn more about Apify

Need Professional Help?

Couldn't solve your problem? Hire a verified specialist on Fiverr to get it done quickly and professionally.

Find a Specialist

Trusted by millions | Money-back guarantee | 24/7 Support