Google Maps Autocomplete - les suggestions de recherche Maps en lignes structurées
Tapez les premières lettres de n'importe quoi dans Google Maps et il propose dix complétions. Elles proviennent de ce que les gens recherchent réellement sur Maps, ce qui en fait une lecture directe de la façon dont les clients demandent une catégorie - les raccourcis, les quasi-synonymes, les formulations locales qu'aucune taxonomie interne ne contient. Ce service transforme ce menu déroulant en tableau : une ligne par suggestion, quatre colonnes, exportées en CSV, JSON ou Excel, pour autant de requêtes de départ que vous voulez soumettre. La référence publiée accepte le paramètre query sous forme de tableau et regroupe jusqu'à mille requêtes en une seule demande.
L'export a deux propriétés qui tirent en sens inverse, et comprendre les deux constitue tout le travail. Sa taille est parfaitement prévisible : chaque requête de départ renvoie exactement dix suggestions - cela s'est vérifié sur chaque bloc mesuré, sans bloc court ni long - si bien que les lignes égalent les requêtes multipliées par dix, connues avant toute dépense. Son contenu n'est pas prévisible du tout. Nous avons lancé une requête six fois et reçu six listes différentes, avec seulement quatre de ses dix suggestions communes aux deux premières exécutions ; une autre requête n'en partageait que deux sur dix d'une exécution à l'autre. L'autocomplétion Maps est une surface vivante, pas une table de correspondance, et une extraction est une anecdote plutôt qu'une réponse.
Cette instabilité devient exploitable dès que l'on cesse de la combattre. Échantillonnez chaque requête de départ plusieurs fois et classez les complétions selon leur fréquence de réapparition : une expression présente dans tous les échantillons traduit une formulation de demande réellement stable, et une expression qui n'apparaît qu'une fois ne mérite pas qu'on agisse dessus. La fréquence sur plusieurs exécutions est ici la véritable mesure, ce qui signifie aussi que le modèle de coût diffère de la plupart des extracteurs : échantillonner dix requêtes cinq fois chacune est un meilleur emploi de la même dépense que d'extraire cinquante requêtes une seule fois. Deux de nos exécutions sont revenues vides : un travail planifié devrait donc réessayer plutôt que de supposer que chaque demande renvoie quelque chose.
Deux points plus modestes à ne pas rater. La colonne position est un rang à l'intérieur du menu déroulant d'une requête, pas un numéro de ligne : elle va de 1 à 10 et repart pour la requête suivante, de sorte qu'un fichier de cinquante requêtes contient cinquante fois le nombre 1, et le regroupement par query doit précéder tout tri. Et la colonne coordinates est une entrée renvoyée telle quelle - le fragment @lat,lng,zoom d'une URL Maps, identique sur chaque ligne d'une exécution - et non la localisation du lieu suggéré. Sur nos cent lignes elle ne portait que deux valeurs distinctes, l'une vide et l'autre exactement la valeur par défaut documentée dans la référence : nos données montrent donc que la colonne existe et répète ce que vous avez envoyé, et ne montrent rien sur la façon dont une coordonnée délibérément choisie modifie les résultats. Notez aussi qu'une suggestion est une formulation et non une fiche : il n'y a ici ni identifiant de lieu, ni adresse, ni note. Collectez les formulations, puis confiez-les à l'extracteur Maps. Commencez gratuitement : vos 500 premières lignes ne coûtent rien et ne demandent aucune carte bancaire.