web-dev-qa-db-fra.com

Interrogation des utilisateurs qui "aiment" ma page Facebook

Je me demandais s'il était possible d'interroger les éléments suivants:

  • Liste de tous les utilisateurs qui aiment ma page facebook, et
  • Informations supplémentaires que ces utilisateurs ont mises à la disposition du public (au-delà du prénom et du nom)

Essentiellement, chercher à générer des statistiques marketing détaillées sur les utilisateurs qui aiment ma page facebook, si possible. Toutes les suggestions ou alternatives sont les bienvenues.

Je vous remercie.

23
MrRay

Je crains que ce soit PAS possible, suivez ce bug pour plus d’informations. 

Une autre preuve est la table page_fan. Vous remarquerez que seul le champ uid est indexable, de sorte que vous avez besoin de pour connaître l'ID utilisateur à rechercher et non le page_id, car vous savez si l'utilisateur "aime} "une page cela voudrait dire qu'il est un" fan "de cette page. 


Après avoir travaillé activement avec l'API Facebook pendant un certain temps, et après avoir suivi les annonces et les versions d'API (et déprécations), ainsi que l'introduction et les modifications de stratégies, je _ {can comprends que Facebook ne partagera que des informations sur leurs les utilisateurs en les laissant faire explicitement (c.-à-d. interagir/autoriser vos applications). 

Et par conséquent, la meilleure chose à faire en l'absence d'une telle fonctionnalité est: 

  1. Comprenez votre public à travers Page Insights
  2. Collectez les informations et les intérêts des fans en créant des applications personnalisées via Onglets de page et en utilisant d'autres fonctionnalités de Facebook telles que Questions
30
ifaour

Bon, personne ne veut rompre le TOS de Facebook, mais ils nous ont lié nos données de base. Donc, gratter est illégal, mais ne pas enregistrer une page. Ce que j'ai fait (et notez que j'en avais besoin de toute façon hors ligne): Allez à https://www.facebook.com/browse/?type=page_fans&page_id= {FAN PAGE ID} .__ Faites défiler jusqu'à ce que vous avez tous vos fans. Enregistrez cette page sur votre ordinateur local, par exemple Facebook.html . Maintenant, utilisez Ruby et nokogiri:

require 'nokogiri'
>true
f = File.open('/your_path/Facebook.html')
doc = Nokogiri::HTML.parse(f.read)
doc.xpath('//div[@class="fsl fwb fcb"]/a').each {|link| puts link.content}
11
Thiago Ganzarolli

Effectuez une recherche graphique comme ceci: "Les gens qui aiment [le nom de votre fanpage]". Vous aurez tout le résultat.

Ensuite, créez un raccourci sur votre navigateur avec ce code javascripts. Il cliquera sur le lien Afficher plus et défilera jusqu'à ce que tous les résultats apparaissent dans la page:

javascript: i = 0;minutes = 30;counter = minutes * 60;function repeatScroll() {
if (i < counter) {window.scrollTo(0, document.body.scrollHeight);i++;}    
setTimeout(repeatScroll, 1000);}repeatScroll();

Après cela, créez un autre raccourci et exécutez ce code js pour récupérer tous les UID du résultat de la recherche:

javascript:var txt="";e=document.getElementsByClassName("FriendRequestOutgoing");
for(var i=0; i<e.length; i++) {v=e[i].getAttribute("data-profileid");
if(v) txt+=v+"\n"}document.body.innerHTML="<textarea>"+txt+"</textarea>";

Une zone de texte apparaîtra à l'écran avec tous les uid à l'intérieur. Copiez-le simplement dans votre bloc-notes et importez-le dans votre public personnalisé dans le gestionnaire d'annonces Facebook.

J'ai créé et utilise ce code tous les jours pour obtenir tous les UID avec les critères dont j'ai besoin . Vous pouvez lancer la recherche de graphes de votre choix . C'est du code fait maison, donc utilisez-le sans votre propre responsabilité :)

Profitez-en.

6
ntuan16

C'est possible, mais plus avec FQL.

Effectuez une opération GET of https://www.facebook.com/browse/?type=page_fans&page_id= {FAN PAGE ID} et extrayez les utilisateurs.

Alto.

5
Kevin

Maintenant, vous pouvez obtenir des personnes sur votre page avec ce lien, ou cliquez sur le bouton Paramètres, puis sur Personnes dans la barre latérale gauche. https://www.facebook.com/[PAGENAME]/settings/?tab=people_and_other_pages

Si vous souhaitez obtenir la photo de tous les utilisateurs, appuyez sur F12 et ajoutez ces codes à la console:

javascript:i=0;minutes=30;counter=minutes*60;function repeatScroll(){if(i<counter){window.scrollTo(0, document.body.scrollHeight);i++;}setTimeout(repeatScroll,1000);}repeatScroll();

que, lorsque vous avez atteint le bas de la page:

javascript:var txt="";e=document.getElementsByClassName("img"); for(var i=0; i<e.length; i++) {v=e[i].getAttribute("src"); if(v) txt+="<img src='"+v+"'>\n"}document.body.innerHTML="<textarea>"+txt+"</textarea>";

Pour afficher des photos: créez une page HTML et insérez d’abord ces lignes dans ce fichier:

<meta charset="utf-8">
<style>img { width:21px; margin:-1px; }</style>
<div style="width:851px; height:315px;background-color:white;">
<!-- PASTE HERE PHOTOS' CODE YOU GET -->
<span style="color:#3B5998;font-weight:bold;font-size:20px;margin-bottom:4px;">600 like, thank you!</span>
<!-- PASTE HERE PHOTOS' CODE YOU GET -->    
</div>
2
Harkály Gergő

charger toute la liste

i = 0;
minutes = 30;
counter = minutes * 60;
function repeatScroll() {
    if (i < counter) {
        window.scrollTo(0, document.body.scrollHeight);
        i++;
    }    
    setTimeout(repeatScroll, 1000);
}
repeatScroll();

obtenir l'identifiant

var e=document.getElementsByClassName("_3cb8");
var ids = [];
for(var i = 0 ; i < e.length; i++){
  ids.Push(e[i].getAttribute("href"));
}
console.log(ids);
0
Hoang Le

Ensuite, créez un raccourci sur votre navigateur avec ce code javascript. Il cliquera sur le lien Afficher plus et défilera jusqu'à ce que tous les résultats apparaissent sur la page:

i = 0;
minutes = 30;
counter = minutes * 60;
function repeatScroll() {
    if (i < counter) {
        window.scrollTo(0, document.body.scrollHeight);
        i++;
    }    
    setTimeout(repeatScroll, 1000);
}
repeatScroll();

Après cela, créez un autre raccourci et exécutez ce code js pour récupérer tous les UID du résultat de la recherche:

var e=document.getElementsByClassName("fsl fwb fcb");
var ids = [];
for(var i = 0 ; i < e.length; i++){
  ids.Push(JSON.parse(e[i].childNodes[0].getAttribute("data-gt")).engagement.eng_tid);
}
console.log(ids);
0
Renato