Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

Track Airbnb stay prices without mistaking missing results for bookings

Description and use

This workflow tracks prices for a fixed Airbnb stay, correctly handling missing listings and preserving price history.

Problem

Missing rooms in limited Airbnb search exports can be mistaken for bookings, leading to false alerts when only a subset of results is captured.

Outcome

The workflow accurately tracks price changes for a fixed stay, correctly handles missing rooms by preserving historical data, and avoids false booking alerts caused by result limits.

Workflow

  • Download airbnb_stay_watch.py, test_airbnb_stay_watch.py and airbnb-stay-input.json from the Gist.
  • Run test_airbnb_stay_watch.py to verify offline checks and set APIFY_TOKEN in the environment.
  • Execute python airbnb_stay_watch.py capture berlin-stay --input airbnb-stay-input.json to start a paid Actor run and store observations in stays.sqlite3 and stay-history.jsonl.
  • Repeat the capture command to add new observations; the script compares new prices with previous ones and reports status (same_price, first_observation, price_changed, unpriced).
  • Use python airbnb_stay_watch.py export berlin-stay to regenerate the JSONL file from SQLite without an API call.
  • If a run fails to export, resume it with python airbnb_stay_watch.py capture berlin-stay --input airbnb-stay-input.json --run-id YOUR_EXISTING_RUN_ID.
  • Back up the output folder if history matters; run commands sequentially against one folder.

Evidence

A room can disappear from a short Airbnb search export even when nothing about its availability has changed.

Source

The script needs Python 3.11 or newer and uses the standard library.

Source

Each JSONL line contains the source listing, run ID, comparison status, previous total and price delta.

Source

  • Record date: 2026-09-15T20:45:27.017Z