Précédent   Forum des professionnels en informatique > PHP > Scripts
Scripts Forum d'entraide sur les scripts PHP téléchargés. Les meilleurs scripts PHP, la FAQ scripts PHP, toutes les FAQ PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/10/2011, 14h25   #1
Invité de passage
 
Homme
électricien
Inscription : octobre 2011
Messages : 3
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : électricien

Informations forums :
Inscription : octobre 2011
Messages : 3
Points : 0
Points : 0
Par défaut Parser une portion de code HTML

bonjour à tous,
j'ai regerdé dans le forum et ai trouvé des scripts mais je ne parviens pas à les adapter.
je tente de récupérer sur la page de météofrance

http://france.meteofrance.com/vigila...in?ZONE=DEPT11

le code html à l'intérieur des balises TD celles-ci exclues.
Code :
<td class="texte12_bull" colspan="1" rowspan="1"><b><span style="background-color: rgb(40, 215, 97);">Département en vigilance verte.</span></b><br>Pas de vigilance particulière.</td>
j'ai ceci comme scripts:
1)
Code :
1
2
3
4
5
6
7
8
9
<?php
	function recup_article($url)
	{
		$source = file_get_contents($url);
		$resultat = preg_match('#<td class="texte12_bull" colspan="1" rowspan="1">(?<couleur>[^<]+)</td>#', $source, $couleur)
	}
	$couleur = recup_article('http://france.meteofrance.com/vigilance/Bulletin?ZONE=DEPT11');
	echo $couleur;
?>
et aussi :
Code :
1
2
3
4
5
6
7
<?php
$news_a=file("http://france.meteofrance.com/vigilance/Bulletin?ZONE=DEPT11" );
for ($cpt_i=0; $cpt_i<count($news_a); $cpt_i++)
 {
 print $news_a[$cpt_i];
 }
?>
je ne parviens pas à récupérer ce que je veux. j'ai les autorisations de météofrance et on serveur accepte le parse externe.

Avez-vous une idée ? Merci.
dypelec est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 14h53   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 180
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 180
Points : 8 557
Points : 8 557
pareil que pour les autres, pour parser du HTML c'est DOMDocument, de plus je crois que meteo france fournis une api
http://publitheque.meteo.fr
__________________
http://blog.stealth35.com/
stealth35 est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 15h20   #3
Invité de passage
 
Homme
électricien
Inscription : octobre 2011
Messages : 3
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : électricien

Informations forums :
Inscription : octobre 2011
Messages : 3
Points : 0
Points : 0
Par défaut suite

j'ai consulté le lien mais rien sur la vigilance dont je parle. je pense que MF m'aurait indiqué le lien quand je les ai contacté.
mon essai dom insatisfaisant :
Code :
1
2
3
4
5
6
7
8
9
<?php
$myhtml = file_get_contents ('http://france.meteofrance.com/vigilance/Bulletin?ZONE=DEPT11');
$doc = new DOMDocument();
$doc->loadHTMLfile($myhtml);
$tags = $doc->getElementsByTagName('span');
foreach ($tags as $tag) {
echo $tag->getAttribute('href').' | '.$tag->nodeValue."\n";
}
?>
des idées ? merci par avance.
dypelec est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 15h45   #4
Modérateur
 
Inscription : septembre 2010
Messages : 7 180
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 180
Points : 8 557
Points : 8 557
loadHTMlFile attend direct un URL, donc pas besion de faire file_get_contents avant, je te conseil de travailler avec le niveau d'erreur maximal (E_ALL | E_STRICT)
__________________
http://blog.stealth35.com/
stealth35 est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/10/2011, 09h12   #5
Invité de passage
 
Homme
électricien
Inscription : octobre 2011
Messages : 3
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : électricien

Informations forums :
Inscription : octobre 2011
Messages : 3
Points : 0
Points : 0
Par défaut essai raté

j'ai essayé aussi avec un parser "simple HTML Dom" j'ai ce message d'erreur:
Citation:
Warning: file_get_contents() [function.file-get-contents]: URL file-access is disabled in the server configuration in /homepages/25/d348484298/htdocs/wsb6109709101/simple_html_dom.php on line 70
Warning: file_get_contents(http://france.meteofrance.com/vigila...in?ZONE=DEPT11) [function.file-get-contents]: failed to open stream: no suitable wrapper could be found in /homepages/25/d348484298/htdocs/wsb6109709101/simple_html_dom.php on line 70
Fatal error: Call to a member function find() on a non-object in /homepages/25/d348484298/htdocs/wsb6109709101/meteo7.php on line 9
j'ai l'impression que mon serveur ne permet pas la récup externe et que le site de MF vérifie que l'on ne récupère pas de données chez lui.
dypelec est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/10/2011, 09h45   #6
Modérateur
 
Inscription : septembre 2010
Messages : 7 180
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 180
Points : 8 557
Points : 8 557
pourquoi utiliser "simple HTML Dom" alors que DOMDocument est la pour ça ?
__________________
http://blog.stealth35.com/
stealth35 est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h10.


 
 
 
 
Partenaires

Hébergement Web