OYO Hotel Scraper avatar

OYO Hotel Scraper

Pricing

from $10.00 / 1,000 results

Go to Apify Store
OYO Hotel Scraper

OYO Hotel Scraper

Scrape hotel listings from OYO based on city and date filters. Extracts name, price, rating, amenities, images, availability, and booking URL.

Pricing

from $10.00 / 1,000 results

Rating

5.0

(3)

Developer

ScrapeAI

ScrapeAI

Maintained by Community

Actor stats

0

Bookmarked

5

Total users

4

Monthly active users

6 days ago

Last modified

Share

OYO Hotel Scraper 🏨

A web scraper for OYO hotel listings. It navigates OYO search pages, intercepts API responses, extracts hotel metadata, and optionally scrapes hotel detail pages for missing fields.

Features

  • Scrapes OYO hotel listings using search URLs or city/date inputs.
  • Captures hotel name, price, discounted price, rating, review count, amenities, images, room type, availability, and booking URL.
  • Supports optional startUrl override and cityId filter for exact OYO URLs.
  • Handles infinite scroll, page load delays, and embedded JSON extraction.

Getting Started

  1. Install dependencies

    $npm install
  2. Configure input

    • Edit INPUT.json or provide actor input through the Apify platform.
    • Example INPUT.json:
      {
      "city": "Chennai",
      "startUrl": "https://www.oyorooms.com/search?location=Chennai%2C%20Tamil%20Nadu%2C%20India&checkin=03%2F04%2F2026&checkout=04%2F04%2F2026&roomConfig%5B%5D=1&showSearchElements=false&country=india&guests=1&rooms=1&filters%5Bcity_id%5D=12",
      "cityId": "12",
      "checkIn": "2026-04-10",
      "checkOut": "2026-04-11",
      "maxHotels": 100,
      "headless": true
      }
  3. Run locally

    $npm start
  4. Docker / Actor

    • The Dockerfile can build the image.
    • .actor/actor.json defines the Apify actor configuration.

File Overview

  • src/main.js – actor entry point that loads input, launches Playwright, and calls the scraper.
  • src/scraper.js – scraping implementation for OYO search pages and hotel detail pages.

Input & Output Schemas

  • Input schema: .actor/input_schema.json – defines supported actor inputs such as city, startUrl, cityId, checkIn, checkOut, maxHotels, and headless.
  • Dataset schema: .actor/dataset_schema.json – defines the output record structure for scraped hotel data.

These schema files are referenced by .actor/actor.json and used by Apify for input validation and dataset storage.

Logs & Storage

  • Logs are written to Apify storage during actor execution.
  • Scraped dataset records are stored in Apify dataset storage.

License

This project is provided as-is. Feel free to adapt and extend it for your own scraping needs.