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 :

Analyser une page distante sans l'afficher


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 64
    Points : 44
    Points
    44
    Par défaut Analyser une page distante sans l'afficher
    Bonjour!
    Je souhaite créer un petit site internet qui utilise en fait les moteurs de recherche multimedia (flickr, dailymotion...). J'ai testé en local certaines choses, comme récupérer les intitulés, mais je souhaite maintenant l'élargir ç une version non locale. Je souhaite en fait récupérer le contenu de la page internet (par ex http://www.dailymotion.com/videos/re.../search/Freddy Krueger) mais include affiche la page, require idem... Comment faire?
    En java, je verrais (c'est un URLConneciton.getContent ou similaire mais alors en Php ....


    Merci d'avance !

  2. #2
    Membre confirmé
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 397
    Points : 518
    Points
    518
    Par défaut
    salut

    plusieurs solutions :

    Parser la page ligne par ligne :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $file = fopen ("http://www.developpez.net/", "r");
    if (!$file) {
       echo "<p>Impossible de lire la page.\n";
       exit;
    }
    while (!feof ($file)) {
       $line = fgets ($file, 1024);
       echo ($line) ; 
    }
    fclose($file);


    récupérer tout le contenu dans une seule variable :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $file = 'http://www.developpez.net/';
    echo htmlentities(file_get_contents($file));

    utiliser l'extension cURL : (permet une gestion beaucoup plus aboutie) mais faut-il encore en avoir vraiment besoin.
    http://julp.developpez.com/php/curl/

  3. #3
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 138
    Points : 1 504
    Points
    1 504
    Par défaut
    Tu peux te tourner vers CURL si il est installé en module sur apache (ce qui est le cas quasiment partout aujourd'hui et activable en un clic sur des serveurs "perso" genre wamp ou easyphp).

    Voici une syntaxe possible:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
            $url="http://www.site.com";
            $ch = curl_init($url);
            curl_setopt($ch, CURLOPT_TIMEOUT, 15);
            curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 15);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
            $data = curl_exec($ch);
            curl_close($ch);
            //$data contient la page distante :)

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 64
    Points : 44
    Points
    44
    Par défaut
    Merci pour vos réponses, toujours aussi rapides!
    En fait je souhaiterais appliquer à la page un traitement de style Ajax orienté framework Prototype ($$(a[class=...) et je pense que cela risque de ne pas fonctionner avec la variable ni avec l'autre méthode: en effet, cela parse le DOM de la page et j'ignore si cela fonctionnera avec une variable...

  5. #5
    Membre habitué
    Avatar de savageman86
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    105
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 105
    Points : 199
    Points
    199
    Par défaut
    Prototype c'est en Javascript coté client et PHP c'est côté serveur. A moins d'afficher quelque chose dans ta page HTML, ca me semble difficile.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 64
    Points : 44
    Points
    44
    Par défaut
    Donc je vais laisser Php parser la page ?
    On ne peut pas intégrer les deux moyens qui se completent ?

  7. #7
    Membre habitué
    Avatar de savageman86
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    105
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 105
    Points : 199
    Points
    199
    Par défaut
    Ton traitement c'est pour faire quoi après ? Afficher sur ta page ?

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 64
    Points : 44
    Points
    44
    Par défaut
    En fait je souhaite afficher sur un site les vidéos etc... en fait c'est un moteur de recherche visant à afficher les vidéos, images correspondant à un mot recherché, lesquelles images, vidéos ... sont parsées de sites internet ^^ (dailymotion, youtube,picasa...)

Discussions similaires

  1. Afficher une page struts sans form
    Par charles888 dans le forum Struts 1
    Réponses: 2
    Dernier message: 13/03/2012, 11h08
  2. Afficher un lien HTML dans une page HTML sans qu'il soit interprété
    Par nico1214 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 07/11/2008, 23h14
  3. Envoyer en post à une page distante
    Par Avatar dans le forum Langage
    Réponses: 8
    Dernier message: 26/05/2006, 14h24
  4. afficher une page web sans la barre d'adresse
    Par bif5 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 24/11/2005, 18h21
  5. imprimer une page Web sans qu'elle ne s'affiche
    Par Mehdi Feki dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 21/07/2005, 20h07

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