Scrapping PHP : tabulation dans le csv
Résolu
nik029
Messages postés
281
Date d'inscription
Statut
Membre
Dernière intervention
-
nik029 Messages postés 281 Date d'inscription Statut Membre Dernière intervention -
nik029 Messages postés 281 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaite scrapper les données de ce tableau sur ce site (https://www.carburants.org/prix-carburants/) en PHP. J'arrive à afficher les données mais elles n'apparaissent pas sous la forme de tableau (avec des tabulations, un header, etc.). Voyez vous ce que je pourrais modifier pour y arriver ?
Les données telles qu'elles apparaissent dans le csv:
Merci d'avance
Je souhaite scrapper les données de ce tableau sur ce site (https://www.carburants.org/prix-carburants/) en PHP. J'arrive à afficher les données mais elles n'apparaissent pas sous la forme de tableau (avec des tabulations, un header, etc.). Voyez vous ce que je pourrais modifier pour y arriver ?
<?php header('Content-Type: text/csv'); require __DIR__ . "/vendor/autoload.php"; use Goutte\Client; $client = new Client(); $crawler = $client->request('GET', 'https://www.carburants.org/prix-carburants/'); $out = fopen('donnees.csv', 'w'); $crawler->filter('table tr')->each(function ($node) use ($out) { $nom = $node->text(); fputcsv($out, [$nom]); }); fclose($out); ?>
Les données telles qu'elles apparaissent dans le csv:
DépartementGasoilSP98SP95E10E85GPL Ain (01)1,813€1,817€1,773€1,713€0,775€0,859€ Aisne (02)1,802€1,837€1,794€1,728€0,757€0,813€ Allier (03)1,816€1,837€1,784€1,732€0,758€0,809€ Alpes-de-Haute-Provence (04)1,824€1,840€1,812€1,736€0,791€0,799€ Hautes-Alpes (05)1,826€1,843€1,845€1,749€0,803€0,839€ Alpes-Maritimes (06)1,833€1,856€1,826€1,751€0,777€0,826€ (...)
Merci d'avance
A voir également:
- Scrapping PHP : tabulation dans le csv
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
2 réponses
Bonjour,
il suffit de regarder la documentation de la fonction pour voir que tu peux y ajouter des options .. comme le type de séparateur à utiliser
https://www.php.net/manual/fr/function.fputcsv.php
Par contre, il ne faut pas oublier qu'un CSV c'est juste un fichier texte dont les données sont séparées par ( de base une virgule, sauf si tu changes l'option ).
ça ne fera jamais un "tableau".
J'ai l'impression que tu t'attends à avoir un truc à la Excel ...
Dans ce cas, soit tu retravailles le csv dans ton logiciel de tableur ....
Soit tu fais une export dans le bon format directement..
Pour ça, il existe des librairies telles que phpSpreadSheet ou SpOut
il suffit de regarder la documentation de la fonction pour voir que tu peux y ajouter des options .. comme le type de séparateur à utiliser
https://www.php.net/manual/fr/function.fputcsv.php
Par contre, il ne faut pas oublier qu'un CSV c'est juste un fichier texte dont les données sont séparées par ( de base une virgule, sauf si tu changes l'option ).
ça ne fera jamais un "tableau".
J'ai l'impression que tu t'attends à avoir un truc à la Excel ...
Dans ce cas, soit tu retravailles le csv dans ton logiciel de tableur ....
Soit tu fais une export dans le bon format directement..
Pour ça, il existe des librairies telles que phpSpreadSheet ou SpOut