kings stow direct scrape #1

Open
opened 2026-07-10 12:00:14 +01:00 by jtr · 1 comment
Owner
https://web-bookings.hotels.uk.com/#/booking/51420/rooms/availability?from=2026-07-10&to=2026-07-12&k=xkeXMWxnmNtr5yzRqMkIqXJTCNTE0MjA%3D&r=1783681154765
Author
Owner

Implemented in commit c2e1a97 as the qbook profile.

Approach: httpx against the QBook/Hotels UK JSON API (web-bookings.hotels.uk.com/api/pull). Auth header is deterministic from hardcoded JS bundle constants + dates — no session required.

Room quantity: yes — availableroom (int) per room type. totalrooms also available in the response for context.

Prices: roomprice field (final price including any last-minute discounts). Rooms with roomprice=0 and availableroom>0 are skipped — this means no rate has been configured in QBook's rate manager for that room type (not a scraper issue).

Config params: hotel_id (51420 from the URL) and dk (the k= distribution key from the widget URL, which is fixed per property).

Implemented in commit c2e1a97 as the `qbook` profile. **Approach:** httpx against the QBook/Hotels UK JSON API (`web-bookings.hotels.uk.com/api/pull`). Auth header is deterministic from hardcoded JS bundle constants + dates — no session required. **Room quantity:** yes — `availableroom` (int) per room type. `totalrooms` also available in the response for context. **Prices:** `roomprice` field (final price including any last-minute discounts). Rooms with `roomprice=0` and `availableroom>0` are skipped — this means no rate has been configured in QBook's rate manager for that room type (not a scraper issue). **Config params:** `hotel_id` (51420 from the URL) and `dk` (the `k=` distribution key from the widget URL, which is fixed per property).
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: hotel-manage-stack/rates#1
No description provided.