Python 61.6%
TypeScript 20.9%
CSS 11.4%
JavaScript 5.1%
HTML 1.1%
1# Module `hgregoire` — Site custom23_Généré automatiquement par `scripts/gen_connector_docs.py` — ne pas éditer à la main._45## Vue d'ensemble67- **Fichier** : `autoka/connectors/hgregoire.py`8- **Sources membres** : 19- **Annonces actives (BD)** : 193810- **Backend de fetch** : Scrapfly11- **Mécanique détectée** : blob JSON data-class12- **Plafonds / cache** : AUTOKA_MAX_DETAILS, AUTOKA_MAX_PAGES, cache détail BD (detail_cache)13- **Classes** : `HGregoire` → `hgregoire`1415## Mécanique (en-tête du module)1617> connectors/hgregoire.py : connecteur HGrégoire (hgregoire.com), la plus18> grosse chaîne de mégacentres d'occasion au Québec (St-Léonard, Laval,19> St-Eustache, Saguenay/Chicoutimi, Carbonear/Gaspésie, etc.).20> 21> Stratégie : la page de résultats /auto-usage?page=N est rendue côté22> serveur (WordPress custom) et embarque, pour CHAQUE carte véhicule, un23> <script type="application/json" data-class="Vehicle"> complet :24> Id, année/marque/modèle/version, prix (CAD), odomètre, VIN, no de stock,25> transmission, carburant, traction, carrosserie, couleurs, moteur,26> consommation, photo principale, Permalink ET la succursale du véhicule27> (FullLocation.city + province). 24 véhicules par page, ~74 pages —28> AUCUNE page détail nécessaire : ~75 requêtes pour tout l'inventaire.29> 30> Seules les succursales du QUÉBEC sont conservées (FullLocation.province31> == "QC") — le groupe opère aussi aux États-Unis (hgreg.com) et un32> véhicule hors-Québec serait exclu par ce garde-fou.33> 34> robots.txt demande Crawl-delay: 10 → request_delay élevé (sync complet35> ≈ 12 min, acceptable pour une synchronisation quotidienne).36> AUTOKA_MAX_PAGES (env) limite le nombre de pages pour les tests.37> 38> ENRICHISSEMENT DÉTAIL (galerie + équipements) : la carte liste n'a qu'UNE39> photo et quelques équipements ; la page détail expose la galerie complète40> (~25 photos) et l'onglet « Équipements » (~40 items). Avec Crawl-delay: 1041> un crawl direct des ~1 700 fiches prendrait ~4,7 h → les pages détail42> passent par SCRAPFLY (requêtes gérées par leur infra, non soumises au43> crawl-delay de notre IP). Cache BD à vie (clé stable « v1 » — la galerie44> et les équipements ne changent pas), plafond AUTOKA_MAX_DETAILS (défaut45> 300/sync) : l'inventaire complet s'enrichit en ~6 synchronisations.46> Le véhicule est toujours émis avec les données liste même sans détail.4748## Complétude des champs (annonces actives, N = 1 938)4950| Champ | % rempli |51|---|---|52| Marque | 100.0 % |53| Modèle | 100.0 % |54| Année | 100.0 % |55| Kilométrage | 100.0 % |56| Prix | 100.0 % |57| Carburant | 100.0 % |58| Boîte (transmission) | 100.0 % |59| VIN | 100.0 % |60| Photos | 100.0 % |61| Carfax | 0.0 % |62| GPS (lat/lng) | 100.0 % |6364## Sources membres (BD live)6566| Source | Nom | Ville | Région | Actives | Masquées (dup VIN) | Dernier sync | Statut |67|---|---|---|---|---|---|---|---|68| `hgregoire` | HGrégoire | St-Léonard | Montréal | 1938 | 0 | 2026-09-13 16:07 | OK (1936 trouvés) |6970## Erreurs de synchronisation récentes (sync_log, ok = 0)7172| Source | Quand | Message |73|---|---|---|74| `hgregoire` | 2026-08-31 20:28 | 502 Server Error: Bad Gateway for url: https://www.hgregoire.com/auto-usage?page=74 |75