Dyrk.org - Do You Really Know

[Crawling] Base de donnée de Véhicule à jour

Publié le 18 avril 2016 par #Ro0t

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 ….

 

 

pic1

 

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 !!!!
pic2

 

 

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 » !!!

 

pic3

 

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 !!!

 

 

pic4

 

 

Ensuite … avec quelques lignes de code on arrive à tout !!!

 

#

# 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);

 

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