Partage
  • Partager sur Facebook
  • Partager sur Twitter

Récupération de données sur Facebook

Récupération de noms de membres d'un groupe

Sujet résolu
Anonyme
    9 avril 2009 à 10:35:27

    Salut à tous,

    Il y a peu j'ai créé un groupe sur Facebook afin de créer une sorte de pétition.

    Selon la règle du groupe, affichées dans la description, chaque membre rejoignant le groupe consent à avoir son nom et son prénom utilisés pour la pétition, tout membre ne souhaitant pas apparaitre dans la pétition doit se désinscrire du groupe.

    Le groupe compte déjà plus de 2 500 membres... et j'ai besoin de récupérer tous les noms des membres.

    Quelqu'un pourrait-il me proposer une solution ou un semblant de solution en Javascript (ou éventuellement dans d'autres langages) pour récupérer les noms ?

    Je suis conscient que je demande quelque chose qui est presque illégal. En supposant que je raconte des bobards, je pourrais être un spammer qui cherche à récupérer des noms de personnes et les utiliser à des fins peu catholiques...

    Pensez-vous que Facebook peut m'aider ?

    merciiii
    • Partager sur Facebook
    • Partager sur Twitter
      9 avril 2009 à 13:45:27

      Donne le code de la page qui contient la liste des membres, ça aidera ;) .
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        9 avril 2009 à 14:40:07

        Bien sûr :

        J'ai pris la version mobile de la page (http://m.facebook.com) pour plus de clarté. :-°


        <?xml version="1.0" encoding="UTF-8"?>
        <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml">
        
        <head>
        	<title>NOM_DU_GROUPE</title>
        	<link rel="stylesheet" href="http://m.facebook.com/css/m.css" type="text/css"/>
        	<link rel="stylesheet" href="http://m.facebook.com/css/xresults.css" type="text/css"/>
        </head>
        
        <body>
        
        	<div id="marquee">
        		<table width="100%">
        			<tr>
        				<td align="left" width="50%"><img alt="facebook" src="http://m.facebook.com/images/fbook.png" height="19" width="92" /></td>
        				<td align="right" valign="bottom" width="50%"><small><span class="qsearch"><a href="#search">Recherche</a></span></small></td>
        			</tr>
        		</table>
        	</div>
        
        	<div class="lnav header">
        		<small><a href="/home.php?########&amp;refid=19">Accueil</a> &bull; <a href="/profile.php?########&amp;refid=19">Profil</a> &bull; <a href="/friends.php?#########&amp;refid=19">Amis</a> &bull; <a href="/inbox/?r6d4c570a&amp;refid=19">Boîte de réception</a></small>
        	</div>
        	
        	<div id="title">
        		<b>NOM_DU_GROUPE</b>
        	</div>
        	
        	<div class="nopad">
        	Membres actifs
        	
        	<div class="header"></div>
        
        	<div class="">
        		<table>
        			<tr>
        				<td class="label"><a href="/s.php?########&amp;id=#########&amp;k=100000004&amp;gr=2&amp;act=2374053504&amp;refid=19">Membres actifs</a>:</td>
        				<td >2672</td>
        			</tr>
        			<tr>
        				<td class="label"><a href="/s.php?########&amp;id=#########&amp;k=100000004&amp;gr=2&amp;act=2444431900&amp;refid=19">Responsables</a>:</td>
        				<td >0</td>
        			</tr>
        			<tr>
        				<td class="label"><a href="/s.php?########&amp;id=#########&amp;k=100000004&amp;gr=2&amp;act=2389902508&amp;refid=19">Administrateurs</a>:</td>
        				<td >4</td>
        			</tr>	
        			<tr>
        				<td colspan="2"><a href="/s.php?########&amp;id=#########&amp;k=100000004&amp;gr=2&amp;act=2379933256&amp;refid=19">En attente de réponse</a></td>
        			</tr>
        		</table>
        	</div>
        	
        	<div class="results">
        	
        		<table cellspacing="0" cellpadding="0" border="0" class="results">
        		<tr >
        			<td><a href="/profile.php?########&amp;raab78e37&amp;id=#########&amp;refid=19">PERSONNE1</a><br />
        			<small></small><small>RESEAU_PERSONNE1</small><br />
        			<small><a href="/inbox/?########&amp;r0c48b2ff&amp;compose&amp;ids=#########&amp;refid=19">Message</a></small></td>
        		</tr>
        		<tr >
        			<td><a href="/profile.php?########&amp;ra681f5a8&amp;id=#########&amp;refid=19">PERSONNE2</a><br />
        			<small></small><small>RESEAU_PERSONNE2</small><br />
        			<small><a href="/inbox/?########&amp;r41bf2e0b&amp;compose&amp;ids=#########&amp;refid=19">Message</a></small></td>
        		</tr>
        		<tr >
        			<td><a href="/profile.php?########&amp;ra57fe624&amp;id=#########&amp;refid=19">PERSONNE3</a><br />
        			<small></small><small><a href="/inbox/?r84535af7&amp;r6f0edfb6&amp;compose&amp;ids=#########&amp;refid=19">Message</a></small></td>
        		</tr>
        		<tr >
        			<td><a href="/profile.php?########&amp;r8a1bb4c9&amp;id=#########&amp;refid=19">PERSONNE4</a><br />
        			<small></small><small><a href="/inbox/?rba89e312&amp;r3a20d097&amp;compose&amp;ids=#########&amp;refid=19">Message</a>&nbsp;|&nbsp;<a href="tel:662547330">Appeler</a></small></td>
        		</tr>
        		<tr >
        			<td><a href="/profile.php?########&amp;r337946f6&amp;id=605727471&amp;refid=19">PERSONNE5</a><br />
        			<small></small><small><a href="/inbox/?re2ad318f&amp;rf096d2ac&amp;compose&amp;ids=#########&amp;refid=19">Message</a></small></td>
        		</tr>
        		<tr >
        			<td><a href="/profile.php?########&amp;r7a739d03&amp;id=#########&amp;refid=19">PERSONNE6</a><br />
        			<small></small><small>RESEAU_PERSONNE6</small><br />
        			<small>RESEAU_PERSONNE6</small><br />
        			<small><a href="/inbox/?########&amp;r9b14d479&amp;compose&amp;ids=#########&amp;refid=19">Message</a></small></td>
        		</tr>
        		<tr >
        			<td><a href="/profile.php?########&amp;r120a499b&amp;id=#########&amp;refid=19">PERSONNE7</a><br />
        			<small></small><small>France</small><br />
        			<small><a href="/inbox/?rbba42152&amp;rbf416c87&amp;compose&amp;ids=#########&amp;refid=19">Message</a></small></td>
        		</tr>
        		<tr >
        		<td><a href="/profile.php?########&amp;r02defa77&amp;id=#########&amp;refid=19">PERSONNE8</a><br />
        			<small></small><small>RESEAU_PERSONNE8</small><br />
        			<small><a href="/inbox/?rc1392a72&amp;ra03be5a8&amp;compose&amp;ids=#########&amp;refid=19">Message</a></small></td>
        		</tr>
        		<tr >
        			<td><a href="/profile.php?########&amp;rb79f9afd&amp;id=#########&amp;refid=19">PERSONNE9</a><br /><small></small><small>France</small><br />
        			<small><a href="/inbox/?r72fa7711&amp;rb9f2638a&amp;compose&amp;ids=#########&amp;refid=19">Message</a></small></td>
        		</tr>
        		<tr >
        			<td><a href="/profile.php?########&amp;r1745f350&amp;id=#########&amp;refid=19">PERSONNE10</a><br />
        			<small></small><small><a href="/inbox/?rcad464bf&amp;r0e9483d7&amp;compose&amp;ids=#########&amp;refid=19">Message</a></small></td>
        		</tr>
        		</table>
        		
        	</div>
        	
        	<div class="pager">1&nbsp;
        		<a href="http://m.facebook.com/s.php?rab961332&amp;k=100000004&amp; q&amp;id=###########&amp;gr=2&amp;act=2374053504&amp;a=10&amp;ac=mobile_search_actions&amp; n=-1&amp;o=4&amp;s=10&amp;hash=################################&amp;refid=19">2</a> &nbsp;
        		<a href="http://m.facebook.com/s.php?r64f25a80&amp;k=100000004&amp; q&amp;id=###########&amp;gr=2&amp;act=2374053504&amp;a=10&amp;ac=mobile_search_actions&amp; n=-1&amp;o=4&amp;s=20&amp;hash=################################&amp;refid=19">3</a> &nbsp;
        		<a href="http://m.facebook.com/s.php?rb332df63&amp;k=100000004&amp; q&amp;id=###########&amp;gr=2&amp;act=2374053504&amp;a=10&amp;ac=mobile_search_actions&amp; n=-1&amp;o=4&amp;s=10&amp;hash=################################&amp;refid=19">Suiv.</a> &nbsp;
        	</div>
        	
        </div>
        
        	<div class="footer"></div>
        	
        	<div>0&nbsp;<a href="/home.php?########&amp;refid=19" accesskey="0">Accueil</a>
        		<br />1&nbsp;<a href="/profile.php?########&amp;id=########&amp;refid=19" accesskey="1">Profil</a>
        		<br />2&nbsp;<a href="/friends.php?########&amp;refid=19" accesskey="2">Amis</a>
        		<br />3&nbsp;<a href="/inbox/?########&amp;refid=19" accesskey="3">Boîte de réception</a>
        		<br />4&nbsp;<a href="/notifications.php?########&amp;refid=19" accesskey="4">Notifications</a>
        		<br />5&nbsp;<a href="/friends.php?########&amp;p&amp;refid=19" accesskey="5">Annuaire téléphonique</a>
        	</div>
        	
        	<div id="search" class="summary">
        		<small>Rechercher sur Facebook</small><br />
        		<form action="/s.php?########&amp;refid=19" method="get">
        			<input type="text" value="" name="q"  size="15"  />
        			<input type="submit" name="search" value="Recherche" class="button" />			<br />
        			<small>Recherche par nom ou adresse électronique</small>
        			<br />
        		</form>
        	</div>
        	
        	<div id="footer">
        		<small><a href="/findfriends.php?########&amp;view=pymk&amp;refid=19">Rechercher des amis</a><br />
        		<a href="/preferences.php?########&amp;refid=19">Paramètres</a><br />
        		<a href="/help/?########&amp;refid=19">Aide</a><br />
        		<a href="/logout.php?########&amp;refid=19">Déconnexion</a> (<a href="/profile.php?########&amp;id=########&amp;refid=19">MON_PRENOM MON_NOM</a>)<br />
        &#169; 2009 Facebook &bull; <a href="http://www.facebook.com/?m2w">Site complet</a>
        		</small>
        	</div>
        	
        </body>
        
        </html>
        


        J'ai indenté le code moi même il y a peut-être quelques erreurs. J'ai aussi enlevé les nom et prénoms des gens ainsi que leurs ID facebook, pour des raisons évidentes ;)


        En filtrant certaines balises avec du regex ? (je ne sais pas trop)
        • Partager sur Facebook
        • Partager sur Twitter
          9 avril 2009 à 19:44:25

          Pour récupérer les noms des inscrits il te faudra sauvegarder le code de la page puis y ajouter ce code :

          <script type="text/javascript">
            window.onload = function() {
              var results = [];
              var target;
              
              var table = document.getElementsByTagName('table');
              var tablesNbr = table.length;
              
              for(var i=0 ; i < tablesNbr ; i++) {
                if(table[i].className == 'results') {
                  target = table[i];
                }
              }
              
              var tr = target.getElementsByTagName('tr');
              var trNbr = tr.length;
              
              for(var i=0 ; i < trNbr ; i++) {
                results.push(tr[i].getElementsByTagName('a')[0].innerHTML);
              }
              
              document.body.innerHTML = results.join('<br />');
            };
          </script>
          
          • Partager sur Facebook
          • Partager sur Twitter
          Anonyme
            10 avril 2009 à 3:17:31

            Ah ! MERCI Nesquik69!

            Je comprend ce que fait le code, mais je n'aurais pas été capable de le faire moi même.

            Y aurait-il un moyen de pouvoir stocker le résultat dans un fichier txt (par exemple) ?

            Pourrait-on faire de ce script un script Greasemonkey ? Parce qu'à raison de 9 membres par page sur les 3000 :-S

            J'ai trouvé une page listant tous les membres à raison de 100 par page.
            Je vais essayer de modifier le code donné par Nesquik69 pour qu'il fonctionne sur ladite page.

            encore merci !
            • Partager sur Facebook
            • Partager sur Twitter
              10 avril 2009 à 4:36:11

              salut
              pour greasemonkey tu pourrais essayer comme sa

              // ==UserScript==
                      // @name           Facebook Recup Petition
                      // @description    Recuperation des Noms des participent
                      // @include        http://*.facebook.com/*
                      // @copyright      Angelus76 & karzoff
                      // ==/UserScript==
              
              // Recuperation des infos sur les participent //
              var Class = document.getElementsByClassName('results'); 
              var Tr = Class[0].getElementsByTagName('tr');
              var Nom = "";
              for (i=0; i < Tr.length; i++) {
              	var Nom = Nom+Tr[i].getElementsByTagName('a')[0].innerHTML+"<br>";
              }
              // Ecriture sur la page des participent //
                nouveauDiv = document.createElement("div");
                nouveauDiv.innerHTML = Nom;
                FirstDiv = document.getElementById("marquee");
                document.body.insertBefore(nouveauDiv, FirstDiv);
              

              Bon j'ais fait sa vite fait mais sa te donne une base ^^
              pour ce qui est de cree un fichier texte pour enregistrer , je pensse pas que ce soit possible avec Firefox pour des raison de securiter ( avec IE il faut utiliser un ActiveX );

              te reste quand meme la possibiliter de copier coller les resultats dans le bloc note :s

              en esperent que sa t'aide ;)
              salutation angelus
              • Partager sur Facebook
              • Partager sur Twitter
                10 avril 2009 à 14:26:55

                Citation : karzoff

                Parce qu'à raison de 9 membres par page sur les 3000 :-S


                Ah les radins :D ! Malheureusement je ne peux pas t'aider pour GreaseMonkey, j'ai jamais utilisé ce plugin (bien que je devrais un de ces jours x) ).
                • Partager sur Facebook
                • Partager sur Twitter
                Anonyme
                  10 avril 2009 à 16:40:18

                  Oh tu en a déjà fait pas mal :D

                  Ton script fonctionne, je cherche tout simplement à l'utiliser sans avoir à l'intégrer dans chaque page, parce que vu le nombre de membre ça risque d'être très très long
                  • Partager sur Facebook
                  • Partager sur Twitter
                    10 avril 2009 à 17:00:30

                    C'est clair que ça va prendre un peu de temps x)

                    En fait l'idéal serait effectivement de pouvoir enregistrer automatiquement les noms des membres lorsque tu affiches la page comme ça tu aurais "juste" à visionner <math>\(\frac{2500}9\)</math> = 278 pages ^^ .
                    • Partager sur Facebook
                    • Partager sur Twitter
                    Anonyme
                      10 avril 2009 à 17:12:05

                      Peut-être ne le suis-je pas tourné vers la bonne solution ? Je ne m'y connais pas assez en Perl, je ne vois pas comment on pourrait faire en PHP...

                      J'ai posté un message sur le forum des développeurs de Facebook... toujours pas de réponse :(


                      EDIT: en tant qu'administrateur du groupe, je viens de trouver une page permettant d'afficher une centaine de membres par page. C'est déjà mieux.

                      (au passage le groupe est à 3000 membres :lol: )
                      • Partager sur Facebook
                      • Partager sur Twitter
                        10 avril 2009 à 20:44:09

                        en php il te faudras utiliser " CURL " car
                        quand php interoge la page , php doit renseigner ( cookie , userAgent ... ) et curl le fait tres bien

                        j'ais deja le script pour fair ce genre de truc " en fait le mien consiste a recuperer des infos sur Guerre des gans "

                        donc si tu veux on peux toujour essayer a l'adapter pour toi
                        et inssi cree un fichier texte grace au php

                        mais voila sa ne marche que sur les serveur dedié ou perso , les autres bloque les fonctionalité importante pour fair ce genre d'interogation.

                        PS: j'espere avoir ete clair ^^
                        • Partager sur Facebook
                        • Partager sur Twitter
                        Anonyme
                          11 avril 2009 à 0:38:55

                          ah d'accord je vois.

                          Un serveur LAMP/MAMP/WAMP ça marche ?
                          • Partager sur Facebook
                          • Partager sur Twitter
                            11 avril 2009 à 8:56:39

                            oui un serveur perso quoi ^^
                            • Partager sur Facebook
                            • Partager sur Twitter
                            Anonyme
                              11 avril 2009 à 13:40:50

                              Ah ! Dans ce cas là oui je veux bien ton script, si je n'arrive pas à l'adapter à ma page tu pourras m'aider ?

                              Edit :

                              partie du code de la page en question contenant 100 membres par page :

                              <a href="http://www.facebook.com/profile.php?id=#####" class="UIObjectListing_Title" bindpoint="title">PRENOM NOM</a>
                              


                              Chemin XPATH :
                              /html/body/div[4]/div/div[2]/div/div/div/div[3]/div/div[4]/div[2]/div/div[3]/div[2]/a
                              • Partager sur Facebook
                              • Partager sur Twitter
                              Anonyme
                                11 avril 2009 à 18:17:03

                                Sinon, il y a des méthodes moins hard, comme utiliser l'api fb...

                                Mais pour ce que tu demande, facebook n'est pas fan (Group member FQL), où en tous cas il ne faut pas dépasser 500 membre quand tu veux les "rechercher". Il faudra faire donc en plusieurs fois. :)

                                See ya'
                                Maxweb
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  11 avril 2009 à 19:04:28

                                  Citation : karzoff


                                  partie du code de la page en question contenant 100 membres par page :

                                  <a href="http://www.facebook.com/profile.php?id=#####" class="UIObjectListing_Title" bindpoint="title">PRENOM NOM</a>
                                  



                                  Chemin XPATH :

                                  /html/body/div[4]/div/div[2]/div/div/div/div[3]/div/div[4]/div[2]/div/div[3]/div[2]/a


                                  je comprend pas ton Edit :s

                                  sinon pas de probleme pour t'aider a mettre en place le php ;)
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                  Anonyme
                                    12 avril 2009 à 13:37:07

                                    Merci de m'avoir répondu. Angelus, ce que j'ai posté c'est un bout de code de la page qui affiche les membres. Je pensais que ça pourrait aider pour extraire le nom et le prénom des membres.

                                    Citation : maxweb.ver

                                    Sinon, il y a des méthodes moins hard, comme utiliser l'api fb...

                                    Mais pour ce que tu demande, facebook n'est pas fan (Group member FQL), où en tous cas il ne faut pas dépasser 500 membre quand tu veux les "rechercher". Il faudra faire donc en plusieurs fois. :)

                                    See ya'
                                    Maxweb



                                    Ça à l'air intéressant. Est-ce que quelqu'un pourrait me dire comment ça fonctionne ? Ou comment l'utiliser ?
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      12 avril 2009 à 16:01:34

                                      Ok alor dans greasemonkey essaye comme sa

                                      // ==UserScript==
                                              // @name           Facebook Recup Petition
                                              // @description    Recuperation des Noms des participent
                                              // @include        http://*.facebook.com/*
                                              // @copyright      Angelus76 & karzoff
                                              // ==/UserScript==
                                      
                                      // Recuperation des infos sur les participent //
                                      var Class = document.getElementsByClassName('UIObjectListing_Title'); 
                                      var Nom = "";
                                      for (i=0; i < Class.length; i++) {
                                      	var Nom = Nom+Class[i].innerHTML+"<br>";
                                      }
                                      // Ecriture sur la page des participent //
                                        nouveauDiv = document.createElement("div");
                                        nouveauDiv.innerHTML = Nom;
                                        FirstDiv = document.getElementById("marquee");
                                        document.body.insertBefore(nouveauDiv, FirstDiv);
                                      


                                      si sa n'affiche rien dans ce cas il faudras plus d'info sur la page , voir a me contacter sur msn
                                      reguarde ma signature
                                      si mon statut est diferent de Hors ligne alor click sur l'image ;)
                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                      Anonyme
                                        12 avril 2009 à 16:07:06

                                        En faite, ma solution n'est pas "super" simple.
                                        Tu dois d'abords créer une appli facebook, avoir un serveur web (un hébergement quoi) et télécharger le kit de développement (dispo en plein de langages -> php,...), configurer l'appli (la "relier" à ton site, ...), puis développer.
                                        Tu as le processus complet ici : Get Started

                                        Sinon un exemple de code qui permet d'afficher toutes les galeries de soi-même (de la personne qui lance l'appli) :
                                        <?php
                                        
                                        // the facebook client library
                                        require 'int/facebook.php';
                                        require 'int/conf.php';
                                        
                                        //On indique nos identifiants d'appli à facebook
                                        $facebook = new Facebook($api_key, $secret);
                                        $user = $facebook->require_login();
                                        
                                        //Exemple pour afficher toutes les galleries de la personnes
                                        $albums = $facebook->api_client->photos_getAlbums(null, null);
                                        	foreach ($albums as $num => $v) {
                                        	    echo '<p><a href="?aid=',$albums[$num]['aid'],'">',$albums[$num]['name'],'<br /><fb:photo  pid="',$albums[$num]['cover_pid'],'" /></a></p>';
                                        	}
                                        
                                        //Note:Ce n'est qu'un morceau d'un code que je testais, il peut y avoir des bugs utilisé comme tel...
                                        ?>
                                        


                                        Aussi, la documentation du wiki des développeur de facebook est excellentes
                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                        Anonyme
                                          12 avril 2009 à 22:43:59

                                          Le script GM n'a pas fonctionné. :-°



                                          J'ai installé le Dev kit de Facebook app.

                                          Tout est correctement installé.

                                          Il me reste à utiliser la méthode pour récupérer les groupes.

                                          Je ne suis pas très doué en PHP. Je comprend le code, je peux le bidouiller un peu mais je n'ai pas trop le temps pour apprendre (la pétition doit être prête pour lundi soir o_O ).

                                          SELECT uid, gid, positions FROM group_member WHERE gid=gid
                                          

                                          ça c'est la requete SQL c'est ça ?

                                          getMembers c'est une fonction PHP c'est ça ? On peut utiliser SOIT la fonction SOIT la requête ?

                                          La doc dit que la fonction nécessite :

                                          api_key, session_key, call_id, sig, v et gid.

                                          Voilà ce que j'ai :

                                          <?php
                                          // Copyright 2007 Facebook Corp.  All Rights Reserved. 
                                          // 
                                          // Application: Grouplisting
                                          // File: 'index.php' 
                                          //   This is a sample skeleton for your application. 
                                          
                                          $appapikey = 'AP KEY';
                                          $appsecret = 'SECRET KEY';
                                          $facebook = new Facebook($appapikey, $appsecret);
                                          $user_id = $facebook->require_login();
                                          $gid = 'ID DU GROUPE';
                                          $session_key = T;
                                          $call_id = microtime(true);  // Il disent d'utiliser ça dans la doc, je sais pas si je l'ai bien mis.	
                                          $v = '1.0';
                                          $sig = ??? ; // je n'arrive pas à trouver comment faire
                                          $session_key = ??? ; // non plus
                                          $call_id = ??? // celle ci non plus
                                          
                                          // ...
                                          
                                          ?>
                                          


                                          Un peu d'aide serait la bienvenue :-°
                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                            12 avril 2009 à 23:03:00

                                            Euh... $session_key et $call_id, tu les as déjà juste au dessus ! ^^

                                            Donc il te manque juste $sig....
                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                            Anonyme
                                              13 avril 2009 à 0:15:43

                                              ah exact. Un peu tête en l'air ^^


                                              api_key type:string
                                              The application key associated with the calling application.

                                              sig type:string
                                              An MD5 hash of the current request and your secret key, as described in the How Facebook Authenticates Your Application.

                                              v type:string This must be set to 1.0 to use this version of the API.

                                              auth_token type:string
                                              The token returned by auth.createToken and passed into login.php


                                              Je ne comprend pas toute la doc sur le SIG :euh:

                                              EDIT : Réponse sur le forum developpers Facebook :

                                              Citation : nitrosmaster@forum.developers.facebook.com

                                              SELECT uid FROM group_member WHERE gid=gid LIMIT 1,500
                                              


                                              and then incrementing it like so:

                                              SELECT uid FROM group_member WHERE gid=gid LIMIT 501,1000
                                              


                                              And so on?
                                              Oh wait, this would also have the same problem =/ and would require you to use the userids in a further query to get names.



                                              Je commence à stresser par peur de na pas rendre la pétition à temps. S'il le faut je suis prêt à rémunérer un peu celui qui me fera avoir tous les noms des membres de mon groupe (via Paypal ou en faisant un peu de pub pour un site) ^^
                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                13 avril 2009 à 10:31:55

                                                Et t'as essayé la réponse de nitrosmater, donc ?

                                                J'avoue que là ça va être un peu speed...

                                                Pour le $sig, t'es allé voir sur "How Facebook Authenticates Your Application"

                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                Anonyme
                                                  13 avril 2009 à 10:45:32

                                                  J'ai essayé ça :
                                                  <?php
                                                  // Copyright 2007 Facebook Corp.  All Rights Reserved. 
                                                  // 
                                                  // Application: Grouplisting
                                                  // File: 'index.php' 
                                                  
                                                  require_once 'facebook.php';
                                                  
                                                  $appapikey = 'xxx';
                                                  $appsecret = 'xxx';
                                                  $facebook = new Facebook($appapikey, $appsecret);
                                                  $user_id = $facebook->require_login();
                                                  $fql = "SELECT uid FROM group_member WHERE gid=gid LIMIT 1,500";
                                                  
                                                  $result = $facebook->api_client->fql_query($fql);
                                                  echo $result;
                                                  ?>
                                                  


                                                  ça ne marche pas. ça me renvoie une erreur 200 (Permissions error).
                                                  ça me renvoie un code HTTP 200 mais "no data".

                                                  :o
                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    13 avril 2009 à 11:44:16

                                                    Mais il faudrait que tu indiques le gid dans la requête... non ? o_O
                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                    Anonyme
                                                      13 avril 2009 à 12:05:19

                                                      euh je suis vraiment débutant :-°

                                                      <?php
                                                      //...
                                                      $fql = "SELECT uid FROM group_member WHERE gid=65421533xxx LIMIT 1,500";
                                                      //...
                                                      ?>
                                                      


                                                      Même résultat ça me met une page facebook avec à la place du resultat voulu un mot : "array". C'est tout.

                                                      dans ce cas là, dois-je faire quelque chose avec le uid aussi ?
                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                      Anonyme
                                                        13 avril 2009 à 14:30:06

                                                        En faite, il y a deux solutions :
                                                        <?php
                                                        $gid = '5546540564874';
                                                        $groupe = $facebook->api_client->groups_getMembers($gid);
                                                        echo var_dump($groupe);
                                                        ?>
                                                        


                                                        Ou la deuxième (en fql) :
                                                        <?php
                                                        $gid = '5546540564874';
                                                        $query = 'SELECT uid, gid, positions FROM group_member WHERE gid='.$gid.';
                                                        $results = $facebook->api_client->fql_query($query);
                                                        echo var_dump($results);
                                                        ?>
                                                        
                                                        • Partager sur Facebook
                                                        • Partager sur Twitter
                                                        Anonyme
                                                          14 avril 2009 à 10:49:26

                                                          bon ça n'a pas marché :-°

                                                          J'ai opté pour un copier coller hard core.

                                                          Je me suis fait un petit script BASH pour supprimer les informations parasites.

                                                          Pour la petite histoire, même en faisant un copier coller de toute la liste, certains membres n'apparaissaient pas j'ai donc du recommencer plusieurs fois, concaténer les listes et supprimer les doublons.

                                                          Au final j'ai réussi même si ça m'a pris du temps. :p

                                                          Merci quand même à tous !!
                                                          • Partager sur Facebook
                                                          • Partager sur Twitter

                                                          Récupération de données sur Facebook

                                                          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                                          • Editeur
                                                          • Markdown