|
|
PRATIQUE PHP |
|
|
|
Récupérer le contenu d'un site tiers |
|
En considérant une page Web comme un fichier, on peut en tirer seulement l'information que l'on souhaite.
(10/05/2005) |
|
|
Forum |
|
Réagissez
dans les forums
de JDN Développeurs
|
Il est possible, quoique pas obligatoirement de manière propre ni
pérenne, de récupérer quelques lignes d'informations issues
d'un site autre. Pour cela, on passe par la même méthode utilisée
pour lire un fichier sur le serveur, mais en indiquant à la
place une URL complète : le fichier sera la page qui se trouve
à cette URL.
L'intégralité
du code HTML de cette page est ainsi stockée dans une variable.
Le tout est ensuite de pouvoir correctement isoler la section
que l'on souhaite récupérer. Pour ce faire, nous utilisons ici
une expression rationnelle, où les limites de la chaîne voulue
sont indiquées en dur. Idéalement, la chaîne sera déjà isolée
dans la structure HTML...
<?php
$page_web = 'http://www.google.fr/';
$debut = 'Nombre de pages Web recensées par Google : ';
$fin = '\.<\/font><\/p><\/center><\/body>';
$page = fopen ($page_web, 'r')
or die('Impossible d\'ouvrir la page '.$page_web.'.');
$contenu_html = '';
while (!feof ($page)) {
$contenu_html .= trim(fgets($page, 4096));
}
preg_match("/$debut(.*)$fin/s", $contenu_html, $valeur);
echo 'Le nombre de pages Web recensées par Google est de '.$valeur[1].'.';
?> |
|
|