PHP :Récupérer les données d'un code source ?

jeremy -  
 Utilisateur anonyme -
Bonjour,

Y-a-t-il la possibilité, en php, de récupérer le code source d'un site web (je pense que oui) et ensuite une fois le code source obtenu extraire une donnée bien précise !????

Merci à tous pour vos réponses !

Jeremy

5 réponses

  1. Utilisateur anonyme
     
    salut,

    tu peux recuperer le contenu d'un code source grace a file_get_contents() : cette fonction enregistre le code source directement dans la variable affectée.

    si tu veux recuperer le code source ligne par ligne : fopen() + fgets()

    pour le traitement c'est regex ( grace au preg_match ou preg_match_all ) ou x-path.

    j'espere t'avoir aidé
    1
    1. Sebbonard Messages postés 455 Statut Membre 171
       
      Oui mais je crois qu'il veut récupérer le code d'un autre site.
      0
    2. Utilisateur anonyme
       
      il peut que recuperer le code hmtl/css/js mais pas de php d'un autre site web
      0
    3. Sebbonard Messages postés 455 Statut Membre 171
       
      Ah bon, tu m'as fait peur^^
      0
  2. Sebbonard Messages postés 455 Statut Membre 171
     
    Bonjour,

    Si tu parles de récupérer le code php, ce n'est pas possible car appliqué côté serveur.
    0
  3. jeremy
     
    Merci pour vos réponses ! Oui je cherche à récupérer le code source d'un autre site, mais pas le php, je sais que l'on ne peut pas car il est exécuté côté serveur !

    Maintenant ... si par exemple je cherche à prendre la source de Google.fr puis par exemple, en ligne 6, rechercher ça :

    </script><style id=gstyle>

    ... et n'extraire que gstyle !

    Voila ce que je cherche à faire, comment est-ce possible ?? Merci beaucoup !

    Jeremy
    0
    1. Sebbonard Messages postés 455 Statut Membre 171
       
      Je ne connais pas le but mais tu peux directement voir le code source à partir de ton navigateur (afficher la source pour IE, afficher le code source pour google chrome...)
      0
    2. jeremy
       
      oui ok merci mais en faite j'ai deux sites web, et je cherche à les coordonné ! Lorsqu'une personne se rend sur le site 1 je voudrai qu'avec php j'aille chercher des infos sur le site 2 !

      Comment rechercher une donnée bien précise avec php ? Regex ? Pre_match_all ?

      Merci encore !
      0
  4. adns Messages postés 1152 Statut Membre 153
     
    Bonjour,

    Si tu possède les 2 sites il te suffit de te connecter via le 2ème site à la base de données du premier. Avoir 2 connexions est tout a fait faisable.

    Adns
    0
    1. jeremy
       
      Bonjour,

      merci pour votre réponse, oui je le sais bien mais je cherche à faire cette solution ... merci encore !
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Utilisateur anonyme
     
    salut, voila la regex pour ton exemple mensionné plus haut:

    </script><style id=gstyle>

    preg_match('#<\/script><style id=(.+?)>#',$code_source,$match);
    //$match est un tableau qui contient toutes les occurences XXX qui correspondent a </script><style id=XXX>

    voila.

    je t'invite par ailleurs de voir ce lien qui explique les regex (en tout cas la base):

    https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/916990-les-expressions-regulieres-partie-1-2
    0
    1. jeremy
       
      ok merci beaucoup je vais tester ! je reviens vite te dire comment que ça se passe ;)
      0
    2. jeremy
       
      Comment faire, d'après ton code, pour afficher le résultat ?

      echo '$resultat';
      ???


      Merci beaucoup !
      0
    3. jeremy
       
      héhééé j'ai trouvé pour afficher : echo $match[1]; super !

      Merci beaucoup ! :D
      0
    4. Utilisateur anonyme
       
      si tu as d'autres regex , je serais ravi de t'aider :)
      0