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

Langage PHP Discussion :

Analyse d'une page HTML pour récupérer les liens correspondants à une classe CSS


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Janvier 2007
    Messages : 144
    Points : 190
    Points
    190
    Par défaut Analyse d'une page HTML pour récupérer les liens correspondants à une classe CSS
    Bonjour,

    je cherche à faire du parsing de page web avec php depuis un certain temps mais je me disperse un peu et je n'y arrive toujours pas.

    Le probleme :

    je veux ouvrir la page $url (jusqu'ici tout va bien)

    elle est composée d'un tas de n'importe quoi mais ce que je veux, ce sont les liens qui ont la forme :

    <a href="une_url_quelquonque" class="laclasserecherchee">

    Donc c'est sur une classe définie que je veux pouvoir travailler

    en sortie, je devrais selon toute logique récupérer un tableau.

    Je suis conscient que les reg ex seraient une bonne solution mais je suis loin d'en maitriser les arcanes.

    J'utilise XAMPP par défaut en local mais les pages cibles sont sur internet.

    Au secours ;-)

    Merci de votre attention.

  2. #2
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 487
    Points : 5 134
    Points
    5 134
    Par défaut
    Il te suffit de construire le pattern correspondant à ton bout de code... pour l'isoler
    -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_SIGNATURE -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
    Dans la mesure du possible, essayez de montrer votre problème en situation réelle en nous donnant une url, que l'on puisse tester.
    Pensez également à cocher

    Aucun problème ne doit être résolu en MP (Message Privé) le forum est là pour ça.

    Dimension Internet

  3. #3
    Membre habitué
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Janvier 2007
    Messages : 144
    Points : 190
    Points
    190
    Par défaut extrait du code
    Voici le code en question :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    $nomfichierResultat="monfichier.txt";
    if( !file_exists($nomfichierResultat))
    {
        touch($nomfichierConso);
        $Handle = fopen($nomfichierResultat, 'w');
        $Data="Début des liens<br>";
        $url="http://monurl.com";
        $inF = fopen($url,"r"); 
        while (!feof($inF)) {
            $mavaleur=fgets($inF, 4096)."<br>";
            $Data=$mavaleur;
            fwrite($Handle, $Data);
        } 
        fclose($inF); 
        fclose($Handle); 
    }

  4. #4
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 487
    Points : 5 134
    Points
    5 134
    Par défaut
    LOL non je parlais du code que tu essayes de parser
    Tu dois isoler :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="une_url_quelquonque" class="laclasserecherchee">
    à l'aide d'une REGEX.
    -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_SIGNATURE -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
    Dans la mesure du possible, essayez de montrer votre problème en situation réelle en nous donnant une url, que l'on puisse tester.
    Pensez également à cocher

    Aucun problème ne doit être résolu en MP (Message Privé) le forum est là pour ça.

    Dimension Internet

  5. #5
    Membre habitué
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Janvier 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Janvier 2007
    Messages : 144
    Points : 190
    Points
    190
    Par défaut il en manque un bout
    je suis arrivé à cela mais il m'en manque un bout pour la classe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $page = file_get_contents ("http://monrl");
    preg_match_all('/<a.*href="?([^" ]*)" /iU', $page, $matches);
    foreach($matches[1] as $link){
        echo $link."\n";
    }

Discussions similaires

  1. [WD18] Parser une page HTML pour récupérer certaines données.
    Par Khyinn dans le forum WinDev
    Réponses: 3
    Dernier message: 06/01/2015, 21h35
  2. Réponses: 9
    Dernier message: 23/06/2011, 21h28
  3. RegEx pour extraire les liens d'une page html
    Par herch dans le forum API standards et tierces
    Réponses: 7
    Dernier message: 13/05/2009, 17h26
  4. Erreur, Parser : récupérer les liens d'une page html
    Par floflo_2006 dans le forum Général Java
    Réponses: 5
    Dernier message: 13/12/2006, 01h26
  5. Récupérer tous les liens d'une page html
    Par lapras123 dans le forum C
    Réponses: 28
    Dernier message: 08/08/2006, 11h30

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