Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
slam:indexation_de_donnees_non_structurees [2025/02/12 22:03] – [Indexation de données non structurées] dthevenot | slam:indexation_de_donnees_non_structurees [2025/02/20 09:41] (Version actuelle) – [Indexer ces données dans MeiliSearch] dthevenot | ||
---|---|---|---|
Ligne 12: | Ligne 12: | ||
La recherche sur MeiliSearch permet : | La recherche sur MeiliSearch permet : | ||
- | * D' | + | * D' |
* De rechercher avec plus de flexibilité (filtres, tolérance aux fautes, suggestions, | * De rechercher avec plus de flexibilité (filtres, tolérance aux fautes, suggestions, | ||
* De tester des requêtes différentes (exemple : " | * De tester des requêtes différentes (exemple : " | ||
Ligne 24: | Ligne 24: | ||
===== Utilisation : Exemple simple ===== | ===== Utilisation : Exemple simple ===== | ||
+ | ==== Envoi des données ==== | ||
+ | === Avec curl === | ||
Indexer des documents (titres de livres) : On va créer un index nommé **books** et y ajouter des documents. | Indexer des documents (titres de livres) : On va créer un index nommé **books** et y ajouter des documents. | ||
- | |||
- | ==== Envoi des données ==== | ||
- | |||
- | Utilise curl ou Postman : | ||
< | < | ||
curl -X POST ' | curl -X POST ' | ||
</ | </ | ||
- | ==== Rechercher | + | |
+ | __Puis rechercher | ||
On va chercher tous les livres contenant " | On va chercher tous les livres contenant " | ||
< | < | ||
Ligne 42: | Ligne 41: | ||
</ | </ | ||
MeiliSearch retourne les documents correspondants avec une recherche full-text rapide ! | MeiliSearch retourne les documents correspondants avec une recherche full-text rapide ! | ||
+ | === Avec Postman (conseillée)=== | ||
+ | Indexer des documents (titres de livres) : On va créer un index nommé **movies** et y ajouter des documents. | ||
+ | - installer Postman | ||
+ | - Vérifier que Meilisearch fonctionne : Méthode : **GET**(recherche) URL : http:// | ||
+ | * Attendu : { " | ||
+ | - Créer un index (si non existant) : Méthode : **POST**(création) URL : http:// | ||
+ | * **Headers** (Key: | ||
+ | * **Content-Type**: | ||
+ | * **Body (raw-> | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }</ | ||
+ | - Indexer des documents : Méthode : **POST** URL : http:// | ||
+ | * **Body (raw-> | ||
+ | [ | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ] | ||
+ | </ | ||
+ | - Rechercher des documents contenant " | ||
===== Utilisation d'un jeu de données Open Data ===== | ===== Utilisation d'un jeu de données Open Data ===== | ||
Ligne 64: | Ligne 92: | ||
🔗 https:// | 🔗 https:// | ||
- | Exemple de requête pour chercher | + | Exemple de requête pour chercher |
'' | '' | ||
Cela retourne une liste d' | Cela retourne une liste d' | ||
- | + | **Le faire avec Postman.** | |
- | ==== Indexer | + | ==== Indexer |
On va récupérer ces données et les envoyer dans MeiliSearch en format JSON. | On va récupérer ces données et les envoyer dans MeiliSearch en format JSON. | ||
+ | < | ||
< | < | ||
<?php | <?php | ||
// 1/Fonction pour récupérer les entreprises depuis l'API Recherche d' | // 1/Fonction pour récupérer les entreprises depuis l'API Recherche d' | ||
- | function | + | function |
$url = " | $url = " | ||
| | ||
Ligne 109: | Ligne 137: | ||
// 3/ | // 3/ | ||
$query = " | $query = " | ||
- | $entreprises = fetchEntreprises($query, 10); | + | $entreprises = rechercherEntreprises($query, 10); |
$formattedData = array_map(function ($entreprise) { | $formattedData = array_map(function ($entreprise) { | ||
Ligne 131: | Ligne 159: | ||
-H ' | -H ' | ||
| | ||
- | " | + | " |
| | ||
</ | </ | ||
- | Cela retournera les entreprises ou le mot " | + | Cela retournera les entreprises ou le mot " |
==== A tester ==== | ==== A tester ==== | ||
* Ajouter plus de données (augmenter limit=100). | * Ajouter plus de données (augmenter limit=100). |