# aula — AULA Lévis (4700, boul. Guillaume-Couture, Lévis) - site: https://aulalevis.com/plans-et-prix/ - méthode: html (sélecteur SVG) + REST WordPress `do-selecteur-plans` - annonces: 69 (sur 163 unités du projet — seules les disponibles sont retenues) - couverture (sur 69 annonces): prix 100%, adresse 100%, dispo 100%, superficie 100%, commodités 100%, étage 100% - fixture: ok (72 requêtes) · test: ok (2 verts) ## Champs extraits - Même plateforme `do-selecteur-plans` que La Cour Appartements : **AulaConnector hérite de LaCourConnector** (louka/connectors/la_cour.py) et ne redéfinit que les constantes du projet (BASE, chemins, adresse, secteur, pages de photos/commodités) — parsing partagé à 100 %. - Sélecteur SVG de /plans-et-prix/ : `data-nom` (n° d'unité = external_id), `data-etage`, `data-type` (Loft, 2½ à 4½ + bureau), `data-prix`. AULA a une 3e classe « **attente** » en plus de disponible/indisponible : exclue (pas disponible). - REST `/wp-json/do-selecteur-plans/v1/unite` : `montant` (« 1 665 $ » → prix — bien affiché à la source malgré les promotions), superficie habitable → area_sqft, terrasse, `a_partir` (« Libre le 8 août 2026 »), `etat` re-vérifié. - Commodités : le champ REST `inclusion` est vide chez AULA → crawl des pages /projet/ et /interieurs/ (widgets Jet Engine `.jet-listing-dynamic-repeater__item` + titres h6 Elementor) : Piscine intérieure, Salle commune, Gym, Terrasse dernier étage, 3 ascenseurs, Stationnements intérieurs & extérieurs, Bornes électriques ($), Climatisation, Plafond de 9 pieds, Comptoir de granite… (20 items, niveau projet). - `details.floor` (data-etage), `details.plan_pdf` (plan PDF de l'unité). - Images : plan de l'unité (PNG galerie REST) en tête + photos réelles des pages /interieurs/ et /projet/ (variantes redimensionnées filtrées). ## Champs indisponibles à la source - Animaux, meublé : non publiés. - Date précise de libération : `date_libre` vide partout, `a_partir` = « Libre le » (= disponible maintenant). - lat/lng : non exposés structurellement. - Promotions (« Promotion sur nos lofts et 3½ sélectionnés ») : détails non publiés (contacter l'équipe) — rien d'inventé, le `montant` REST est le prix affiché. ## Fragilités - 69 unités disponibles → 69 appels REST à la première sync (~78 s avec politesse 0.6 s), ensuite cache BD `self.detail()` (clé = attributs SVG) : seules les unités modifiées re-frappent le REST ; garde-fou `max_rest_units=90`. - La classe « attente » doit rester exclue : ces unités ne sont pas louables. - Les commodités sont par PROJET (partagées entre les unités), comme les micro-sites Immostar. - Tout changement du plugin do-selecteur casse aussi la_cour (code partagé) — fixtures des deux connecteurs en sentinelle. ## Échantillon - `aula:101 | AULA Lévis — Unité 101 | 4½ (« 4½ + bureau ») | 1 665 $ par mois | Libre le 8 août 2026 → now | 976 pi² | terrasse 106 pi² | étage 1 | 20 commodités | plan PDF + PNG` - `aula:107 | Loft | 942 $ par mois | 408 pi²`