[Crawling] Base de donnée de Véhicule à jour
Salut les amis,
On dit que les assureurs sont des voleurs mais c’est faux ;)
Je vais d’ailleurs faire très attention à ce que je dis, car j’en ai maintenant dans ma famille ^^
En tout cas, lors d’un de mes innombrables projets en cours, j’ai eu besoin d’une base de données de véhicule … pour permettre à des utilisateurs de saisir leurs véhicules facilement avec une auto-complétion toussa toussa.
Sauf que bon
… même si le net fourni tout …
La meilleure des qualités a un prix …
Sachant que bon nombre de site d’assurance proposent des devis gratuits !!!
C’est là que nous avons une carte à jouer !!!
Cet article, va pour moi, me permettre de vous montrer comment passer de la théorie à la pratique (incluant toute la phase d’analyse) ;)
Voici donc un peu l’analyse que j’ai faite sur le site de la Matmut …
Tout d’abord repérer les différentes catégories de véhicules ….
Ici on constate donc que chaque type de véhicule est défini par l’indicateur « genre »….
| Voiture | 5 |
| Moto | 3 |
| Camping Car | K |
| Caravane | caravane |
| Remoque | remorque |
Pourquoi ne pas avoir fait 1,2,3,4,5 … sachant que bon ça ne protégera pas mieux contre les crawlers … ?!?
Bref ce « genre » va nous permettre de récupérer les différentes marques !!!!

En sélectionnant l’année, nous constatons une jolie requête toute fraîche partir !!!
Requête … qui nous permettra de récupérer les marques par année …
On récupère alors toutes les marques du « genre » !!!
Maintenant que nous savons comment récupérer les marques d’un genre de véhicule …
Nous pouvons … récupérer les modèles pour chaque marque !!!
Ensuite … avec quelques lignes de code on arrive à tout !!!
[pastacode lang= »php » message= » » highlight= » » provider= »manual »]
#
# Dave Hill - 2015 / 2016 - Dyrk.org
# Generate Vehicule List
#
$apiUrl = "http://applis.matmut.fr/DevisMRSQInternet/devis.mcp/";
$genre = array('Voiture'=>'5','Moto'=>'3', 'Camping Car'=>'K', 'Caravane'=>'caravane', 'Remorque'=>'remorque');
$dump = array();
foreach ($genre as $k1 => $v1){
$dump[$v1] = array();
$marques = JSON_decode(file_get_contents($apiUrl."GetListeMarques?genreVehicule=$v1"),true);
foreach($marques as $k => $v){
$dump[$v1][$v['Text']] = array();
$urlModel = "GetListeModeles?anneeDebut=&anneeFin=".date('Y')."&genreVehicule=$v1&marque=".urlencode($v['Text']);
$modeles = JSON_decode(file_get_contents($apiUrl.$urlModel),true);
foreach ($modeles as $k2 => $v2) array_push($dump[$v1][$v['Text']], $v2['Text']);
}
}
echo json_encode($dump);
[/pastacode]
Hop ! rien qu’avec ces quelques lignes, vous devriez être en mesure de vous constituer votre propre base de véhicule.
Sample ici : https://dyrk.org/divers/auto/auto.txt
Dyrk.org

