Récupérer contenu d'une page web

Fermé
lolonaute97 Messages postés 27 Date d'inscription samedi 26 mars 2011 Statut Membre Dernière intervention 14 janvier 2012 - 3 janv. 2012 à 14:49
lolonaute97 Messages postés 27 Date d'inscription samedi 26 mars 2011 Statut Membre Dernière intervention 14 janvier 2012 - 14 janv. 2012 à 13:00
Bonjour à tous les développeurs,

Voila, en fait j'aimerais afficher le contenu de l'encadré gris arrondi a gauche de cette page
https://onlinemarketing.saarland/?numero=1
J'ai un site météo, j'aimerais afficher ce contenu sur mon site en php.
LA difficulté (pour moi) étant que le contenu de cette encadré gris est quotidiennement mis a jour.
J'ai pensé a utiliser preg_match_all

<?php
if (preg_match('#(<div id='box_content_320'>.*?)#i',file_get_contents('http://www.saintpaul-lareunion.com/meteo_plage.php?numero=1'),$r));    
echo $r[1];
?>  


Mais ca ne marche pas...
Help me please
A voir également:

3 réponses

Nono_igo Messages postés 63 Date d'inscription mardi 3 janvier 2012 Statut Membre Dernière intervention 1 octobre 2016 3
4 janv. 2012 à 19:14
Bonjour,

J'ai eu le même genre de problématique en travaillant sur un méta-moteur de recherche il y a qq temps. Si je comprends bien, tu voudrais que s'affiche l'encadré gris mise à jour à chaque fois que l'on charge la page de ton site. Il existe une bibliothèque de fonctions qui peut faire ça : libcurl (ou chercher juste cURL). En gros, voilà à quoi ça devrait ressembler :

<?php
$session=curl_init(); // pour initialiser une session CURL 
curl_setopt($session, CURLOPT_URL, $url);//$url représente l'URL de la page où tu veux chercher ton encadré gris.

curl_setopt(...); // pour définir des options (tu devras sûrement en mettre, pour que ça fonctionne, mais l'on trouve pas mal de doc quand on sait où chercher)
curl_setopt(...); // autre option etc.

$data = curl_exec($session); // pour récupérer le retour de la requête 

curl_close($session); // pour fermer la session CURL
?>



Au moment où ta page sera lu par le serveur (lorsqu'il lira le php pour générer la page HTML qu'il enverra au PC de l'utilisateur de ton site), l'ensemble du code source (html) de la page où se situe l'info sera enregistré dans la variable $data sous forme de string (donc, tu suivras les M.à.J. quotidienne).

Après, tu n'as plus qu'à t'amuser à découper la partie qui t'intéresse et à afficher le résultat où tu le souhaites sur ton site. Tu peux même supprimer certaines choses en interne de ce code pour changer le design par exemple (suffit juste de remplacer les class par les tiennes). Tout cela grâce à la fonction preg_match que tu sembles déjà connaître (pour trouver là où découper) et à des fonctions du style explode().

Seul hic possible : Si le site sur lequel tu prends tes données modifie un peu trop sa structure de base, ton découpage risque de ne plus fonctionner et il faudra le remettre à jour. Mais honnêtement, cela ne devrait pas arriver très souvent vu ton site.

Voilà, n'hésite pas à me dire si tu t'en sors... ou pas ! D'ailleurs, j'ai trouvé cette méthode un peu barbare (pour le découpage surtout, tu verras...) et si quelqu'un à une meilleure méthode, qu'il la présente ! ^^
0
lolonaute97 Messages postés 27 Date d'inscription samedi 26 mars 2011 Statut Membre Dernière intervention 14 janvier 2012
10 janv. 2012 à 06:34
Merci beaucoup je teste tout ça...
0
Nono_igo Messages postés 63 Date d'inscription mardi 3 janvier 2012 Statut Membre Dernière intervention 1 octobre 2016 3
10 janv. 2012 à 14:34
C'est assez pointu comme méthode (enfin moi, je l'ai ressenti comme ça ! ^^), donc n'hésite pas à m'en faire un retour, que cela fonctionne ou pas !
0
lolonaute97 Messages postés 27 Date d'inscription samedi 26 mars 2011 Statut Membre Dernière intervention 14 janvier 2012
13 janv. 2012 à 12:46
Effectivement assez pointu la méthode.
J'ai préféré utiliser Simple html DOM qui m'a simplifié la tache.
Je ne suis pas expert comme toi, jsuis qu'un novice

Par contre si tu as une petite idée pour le probleme que j'ai posté ici,
https://forums.commentcamarche.net/forum/affich-24172313-creer-une-carte-de-trajectoire#p24172313 , je suis preneur. Merci
0
Nono_igo Messages postés 63 Date d'inscription mardi 3 janvier 2012 Statut Membre Dernière intervention 1 octobre 2016 3
13 janv. 2012 à 15:43
Ola, je ne suis pas un expert ! ^^ C'est juste que j'ai déjà rencontré quasiment le même problème.
La preuve, je ne connaissais pas Simple html DOM, mais ça a l'air mieux que ce que je fais à lire vite fait la doc là ! Ca te donne le résultat que tu voulais ?!
Je jette un oeil à ton autre problème voir si je peux t'aider quand même.
0
lolonaute97 Messages postés 27 Date d'inscription samedi 26 mars 2011 Statut Membre Dernière intervention 14 janvier 2012
14 janv. 2012 à 13:00
Ouais en gros c'est ce que je voulais: regarde par toi même ici
http://www.reunion-meteo.com/meteo-plages-ile-reunion-974

merci quand même pour les conseils , idées.....
0
bg62 Messages postés 23590 Date d'inscription samedi 22 octobre 2005 Statut Modérateur Dernière intervention 15 avril 2024 2 362
14 janv. 2012 à 12:22
firebug:
<img src="img/meteo/meteo_plage_1.jpg">

<h6>Météo des plages</h6>
après si l'image change, il suffit de mettre derrière un script pour cela ... ;)
0