import os from pathlib import Path ARCGIS_PATH = os.environ.get("ARCGIS_PATH", "/data/arcgis_data.parquet") DATA_DIR = Path("/app/data") PAGE_SIZE = 24 DELAY_BETWEEN_PAGES = 1.0 DELAY_BETWEEN_OUTCODES = 2.0 MAX_RETRIES = 3 RETRY_BASE_DELAY = 2.0 GRID_CELL_SIZE = 0.01 # degrees for postcode spatial index SEED = 42 TYPEAHEAD_URL = "https://los.rightmove.co.uk/typeahead" SEARCH_URL = "https://www.rightmove.co.uk/api/property-search/listing/search" RIGHTMOVE_BASE = "https://www.rightmove.co.uk" PROPERTY_TYPE_MAP = { "Detached": "Detached", "Semi-Detached": "Semi-Detached", "Terraced": "Terraced", "End of Terrace": "Terraced", "Mid Terrace": "Terraced", "Flat": "Flat", "Maisonette": "Flat", "Studio": "Flat", "Apartment": "Flat", "Penthouse": "Flat", "Ground Flat": "Flat", "Detached Bungalow": "Detached", "Semi-Detached Bungalow": "Semi-Detached", "Town House": "Terraced", "Link Detached": "Detached", "Link Detached House": "Detached", "Bungalow": "Other", "Cottage": "Other", "Park Home": "Other", "Land": "Other", "Farm / Barn": "Other", "House": "Detached", "Not Specified": "Other", "Chalet": "Other", "Barn Conversion": "Other", "Coach House": "Other", "Character Property": "Other", "Cluster House": "Other", "Retirement Property": "Flat", "Plot": "Other", "Garages": "Other", "Mews": "Terraced", } CHANNELS = [ {"channel": "BUY", "transactionType": "BUY", "sortType": "2"}, {"channel": "RENT", "transactionType": "LETTING", "sortType": "6"}, ]