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 :

Lire le contenu d'une page Facebook


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Par défaut Lire le contenu d'une page Facebook
    Bonjour,

    je cherche a accéder a une page facebook
    mais malheureusement après plusieurs tentative le flux que j'obtiens n'est pas celui que je veux mais la page facebook indiquant "Vous utilisez un navigateur web incompatible."

    Est ce vraiment impossible de lire une page Facebook ou quelqu'un aurait il un moyen, une solution miracle !?

    Ce que j'ai essayé dernièrement :
    J'ai tenté de faire une requête similaire a celle envoyée par firefox lorsque je demande la page... Sans succès

    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
    17
    18
    19
    20
    21
    22
     
    $opts = array(
      'http'=>array(
        'method'=>"GET",
        'header'=>	"User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; fr; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3\r\n" .
    				"Host: www.facebook.com\r\n" .
    				"Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3\r\n" .
    				"Accept: image/png,image/*;q=0.8,*/*;q=0.5\r\n" .
    				"Accept-Encoding: gzip,deflate\r\n" .
    				"Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n" .
    				"Keep-Alive: 300\r\n" .
    				"Connection: keep-alive\r\n"
      )
    );
     
    $context = stream_context_create($opts);
    $handle = fopen($url[$i], 'r', false, $context);
    $contents = '';
    while (!feof($handle)) {
    	$contents .= fread($handle, 2048) or die ("Erreur : fread");
    }
    fclose($handle);
    Merci d'avance pour votre aide
    En espérant avoir posté au bon endroit !

  2. #2
    Membre expérimenté
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2008
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2008
    Messages : 185
    Par défaut
    Bonsoir,

    Je suis pas tellement fan de fopen pour de l'accès à distance ( surement que c'est stupide, mais bon ), alors, je te conseillerais d'utiliser curl.
    Mais, de ce que j'ai vu de facebook, tu ne pourra rien faire, vu qu'il faut être connecté pour voir la plupart des pages que j'ai pu trouver ... tu va te heurter à un problème d'identification, même si tu arrive à résoudre ton souci de réponse à la noix :/

    Donc en gros ... je pense que c'est pas possible, mais on n'sais jamais, les ressources de php sont insoupçonnables.

    Bonne chance tout d'même

  3. #3
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Par défaut
    J'essaye avec Curl mais je n'arrive d'un part pas a créer le cookie et d'autre par pas a faire que ca n'imprime pas la page mais plutot que ca la mette just dans un $content.

    A travailler encore mais avant... au lit !

  4. #4
    Membre confirmé
    Inscrit en
    Novembre 2004
    Messages
    151
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Novembre 2004
    Messages : 151
    Par défaut
    heu bah y a une API facebook qui sert à ca ...

  5. #5
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 22
    Par défaut
    Ah bon !!
    Ce serait bien utile ca.
    Aurais tu plus de details a me donner ??

    J'ai un peu avancer

    1. Je me log avec curl
    2. Je vais a la page désirée avec curl
    3. Je me delog avec curl

    Le probleme : a chaque fois que je fais curl_exec ca n'affiche la page
    J'ai donc 3 pages d affichée alors que je souhaiterai seulement parser la "page désirée" pour n'en afficher qu'un petit contenu

    EDIT : Ca ne print plus j oubliais un caractere dans mon curl_setopt($curl, CURLOPT_RETURNTRANSFER , 1);
    Alalalalala

  6. #6
    Membre confirmé
    Inscrit en
    Novembre 2004
    Messages
    151
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Novembre 2004
    Messages : 151
    Par défaut
    Va regarder dans le lien "developpers" sur facebook, y a un exemple appelé "footprints" qui donne les bases de l'API php.

    En ce qui concerne ta méthode avec Curl, c'est bien, mais le jour où la page change ... tu dois recommencer

Discussions similaires

  1. Lire le contenu d'une page html via PHP
    Par laure07 dans le forum Langage
    Réponses: 8
    Dernier message: 25/11/2010, 12h35
  2. Lire le contenue d'une page web généré par Ajax
    Par icb3a dans le forum Web & réseau
    Réponses: 7
    Dernier message: 27/07/2010, 00h46
  3. Lire le contenu d'une page Web
    Par senacle dans le forum Langage
    Réponses: 4
    Dernier message: 03/03/2010, 11h27
  4. Lire le contenu d'une page html via PHP
    Par overtrack dans le forum Langage
    Réponses: 1
    Dernier message: 26/05/2009, 13h09
  5. Lire le contenu d'une page web grâce à un script PHP
    Par BloodyImp dans le forum Langage
    Réponses: 3
    Dernier message: 06/11/2005, 23h29

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