IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

Parser une portion de code HTML


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    électricien
    Inscrit en
    Octobre 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : électricien

    Informations forums :
    Inscription : Octobre 2011
    Messages : 10
    Points : 11
    Points
    11
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    <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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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.

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    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

  3. #3
    Membre à l'essai
    Homme Profil pro
    électricien
    Inscrit en
    Octobre 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : électricien

    Informations forums :
    Inscription : Octobre 2011
    Messages : 10
    Points : 11
    Points
    11
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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.

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    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)

  5. #5
    Membre à l'essai
    Homme Profil pro
    électricien
    Inscrit en
    Octobre 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : électricien

    Informations forums :
    Inscription : Octobre 2011
    Messages : 10
    Points : 11
    Points
    11
    Par défaut essai raté
    j'ai essayé aussi avec un parser "simple HTML Dom" j'ai ce message d'erreur:
    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.

  6. #6
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    pourquoi utiliser "simple HTML Dom" alors que DOMDocument est la pour ça ?

Discussions similaires

  1. Réponses: 3
    Dernier message: 22/01/2008, 08h58
  2. Intégré une zone de code HTML dans 1 page HTML sans Altéré le reste de la page
    Par sozik dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 08/04/2007, 10h38
  3. Executer une portion de code uniquement si le javascript est actif
    Par Rakken dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 07/04/2007, 10h23
  4. [java.lang.class] Votre avis sur une portion de code
    Par be_tnt dans le forum Langage
    Réponses: 3
    Dernier message: 18/10/2006, 16h55
  5. gestion d'erreur resume next sur une portion de code
    Par aarlock dans le forum Access
    Réponses: 2
    Dernier message: 02/06/2006, 15h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo