# Connecteur Votresite.ca (Drupal + OpenCart) (`votresite`) *Généré le 2026-08-23 16:01 par `scripts/gen_connector_docs.py` — fichier produit automatiquement, ne pas éditer à la main.* ## Mécanique / endpoint - Boutique OpenCart montée sous `/boutique` (parfois `/produits`, `/shop`) : inventaire par `/sitemap.xml` sinon crawl des catégories `/fr` (`?limit=100&page=N`), puis fiche par fiche `…/-p/` (rendu 100 % serveur, aucune API JSON). - Module : `fabrika/connectors/votresite.py` - Plateformes BD routées ici : `votresite` **En-tête du module :** > Fabri-Ka — Agrégateur de produits québécois > Auteur : Simon-Pierre Boucher — contact@spboucher.ai > connectors/votresite.py : connecteur Votresite.ca (plateforme québécoise). > Les sites Votresite.ca sont des Drupal 8 gérés (thème owebo-votresite) avec > une boutique OpenCart montée dans un sous-répertoire (/boutique/ ou > /produits/, parfois autre). Rendu 100 % serveur, aucune API JSON : > - inventaire : /sitemap.xml (extension OpenCart, pas toujours > activée) sinon crawl des catégories /fr + pagination > ?limit=100&page=N ; > - fiche : URL …/-p[c…]/ — prix courant dans

…$

, > prix barré (spécial) dans , > « Disponibilité: » / « Modèle: » en
  • , description div#tab-description, > galerie . Les meta twitter:data1/2 servent de > secours mais affichent le prix RÉGULIER même en solde. > Dédup par ID produit (le même p apparaît sous plusieurs chemins de > catégorie, ex. -p361c37c45c44). ## Boutiques rattachées - Registre `data/stores.json` : **45** boutiques - En base (table `stores`) : **45** activées, **43** avec produits **Top 5 par volume :** | Boutique | Domaine | Produits | Dernier sync | Statut | |---|---|---|---|---| | Bijouterie Simard | `bijouteriesimard.ca` | 488 | 2026-08-23 15:53 | ok | | Zylvery-Bijoux Design | `zylverybijouxdesign.com` | 312 | 2026-08-23 15:36 | ok | | AlpagAdore | `alpagadore.com` | 234 | 2026-08-23 15:43 | ok | | Bourdeau artiste peintre | `bourdeauartistepeintre.com` | 182 | 2026-08-23 15:59 | ok | | Les Moniales de Bethléem - CMAQ | `monasteredebethleem.ca` | 174 | 2026-08-23 15:36 | ok | ## Volumétrie & complétude (BD live) | Indicateur | Valeur | |---|---| | Produits actifs | 3 190 | | Prix | 95.5 % | | Photos | 100.0 % | | Description | 100.0 % | | Détails (variantes/attributs) | 100.0 % | | — dont avis (rating/review_count) | 0.0 % | | — dont poids/dimensions | 0.0 % | ## Gotchas - **Plateforme québécoise** (scripts.votresite.ca) : vitrine Drupal 8 géré (thème `owebo-votresite`) + boutique OpenCart en sous-répertoire — le montage est détecté via le registre, la page d'accueil, puis `/boutique`/`/produits`. - **Prix : le HTML d'abord, les meta en secours** — en solde, `twitter:data1` affiche le prix RÉGULIER ; le prix courant est le `

    …$

    ` de la fiche et le prix barré le `` `text-decoration: line-through` (→ `compare_at_price`). - **Titre = dernier `

    ` sans ancre** : le premier `

    ` est le logo du site (un lien) sur plusieurs thèmes ; `og:title` peut être du bourrage de mots-clés (ex. lemieldabee.ca). - **Dédup par ID produit** : le même `p` apparaît sous plusieurs chemins de catégorie (`-p361c37c45c44`). - Les URLs d'images OpenCart contiennent espaces/accents bruts (`image/cache/catalog/…`) — encodées avant stockage. Voir aussi : [INDEX](INDEX.md) · [transport Scrapfly](scrapfly-transport.md) · [découverte & registre](decouverte-registre.md).