2011-03-03 15 views
23

me preguntaba si era posible consultar la siguiente:Consulta de usuarios que 'como' mi página de Facebook

  • Lista de (todos) los usuarios que les gusta mi página de facebook, y
  • Información adicional de dichos usuarios se han puesto a disposición del público (más allá del nombre y apellido)

Básicamente buscando generar estadísticas de marketing detalladas de los usuarios a los que les guste mi página de Facebook, si es posible. Cualquier sugerencia o alternativa bienvenida

Gracias.

+0

Aquí está [la mejor respuesta] [1] Encontré sobre el tema. Incluso le dan un script PHP [1]: http://stackoverflow.com/a/10906320/244911 –

+0

posible duplicado de [API de Facebook: Obtener los fans de/personas que les gusta una página] (http : //stackoverflow.com/questions/4018849/facebook-api-get-fans-of-people-who-like-a-page) –

Respuesta

30

Me temo que esto es NO posible, siga esto bug para obtener más información.

Otra prueba es la tabla page_fan se dará cuenta de que sólo el campo uid es indexable por lo que necesidad saber el ID de usuario a buscarla y no page_id, como usted sabe si un usuario "le gusta" una página esto significaría que es un "fan" de esa página.


Después de estar trabajando activamente con la API de Facebook desde hace un tiempo, y después de los anuncios y comunicados de API (y deprecations), junto con la introducción y cambios de políticas, que puedo entender que Facebook sólo se comparten información sobre sus usuarios permitiéndoles explícitamente hacerlo (también conocido como interact/authorize your Apps).

Y por lo tanto, lo mejor que puede hacer en ausencia de estas características es:

  1. entender a su público a través Page Insights
  2. aficionados Recoger interesa & información mediante la creación de aplicaciones personalizadas a través Page Tabs y el uso de otra características de Facebook como Questions
+2

Estoy de acuerdo en que esto no es posible.He intentado todas las permutas posibles de llamadas, permisos, tokens de acceso, etc. de API, que posiblemente te proporcionen una lista de fans/me gusta de una página durante los últimos días sin éxito. Cualquiera que diga que puede hacer esto, no lo ha intentado o debe haber tenido suerte de alguna manera en una prueba beta de la habilidad como se describe en su enlace a la página de errores. –

+5

El nuevo URL para este error es https://developers.facebook.com/bugs/147185208750426 –

-8

Puede obtenerlo usando facebook abrir gráfico.

https://graph.facebook.com/<your-page-name-or-page-id>/likes

Por ejemplo:

https://graph.facebook.com/chickfila/likes

Es necesario enviar gráfico de llamadas API usando "id" para obtener más información sobre el usuario que les gusta que la página.

Sin embargo, esta llamada recuperará los otros objetos de Facebook que le han gustado a la página (Chickfila), NO a los usuarios a los que les ha gustado la página de Chickfila.

+9

que obtiene las cosas que chickfila gustos; no a quién le gusta chickfila –

+0

Sí, tienes razón. Pero nosotros conseguir user_id que se utiliza para el nombre get –

11

Muy bien, nadie quiere romper los TOS de Facebook pero nos han atado nuestras manos en nuestros propios datos básicos. Por lo tanto, raspar es ilegal, pero no guarda una página. Lo que he hecho (y tenga en cuenta que lo necesitaba para fines fuera de línea de todos modos): Vaya a https://www.facebook.com/browse/?type=page_fans&page_id= {FAN PAGE ID} Desplácese hacia abajo hasta que tenga todos sus ventiladores. Guarde esta página en su máquina local, digamos, Facebook.html. Ahora, usando rubí y 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} 
+0

muestra que se trata de una página privada y no puedo acceda a él – lulu

+0

y muestra "Esta es una publicación privada. No puede ver esta publicación porque la persona no la ha compartido públicamente". – lulu

+0

¿Lo estás haciendo por una página de fans que tienes? –

5

hacer una búsqueda gráfica le gusta esto: "los que les gusta [el nombre de su página de fans]". Lo harás todo el resultado.

A continuación, crear acceso directo en el navegador con este código javascript, se haga clic en el Ver más vínculo y desplazando hasta que todo el resultado se muestra en la página:

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

Después de eso, crear otro acceso directo y ejecutar este js código para recuperar todos los UID de la búsqueda:

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>"; 

un cuadro de área de texto aparecerá en la pantalla con todos los UID dentro. Simplemente cópielo en su bloc de notas e impórtelo a su Audiencia personalizada en el Administrador de anuncios de Facebook.

He creado y uso este código todos los días para obtener todo el UID con el criterio que necesito. Puede iniciar cualquier búsqueda de gráficos que desee. Este es código casero, por lo que lo usa sin su propia responsabilidad :)

Disfrútelos.

+0

Su segundo código no funcionó para mí, así que editó (clase y atributo), esto funciona: 'javascript: var txt = ""; e = document.getElementsByClassName ("lfloat"); for (var i = 0; i "; ' –

2

Ahora puede obtener personas en su página con este enlace, o hacer clic en el botón Configuración, que en Personas en la barra lateral izquierda. https://www.facebook.com/[PAGENAME]/settings/?tab=people_and_other_pages

Si desea obtener toda la foto, pulse F12 del usuario y añadir estos códigos en la consola:

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, cuando llegó al final de la página:

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>"; 

Para visualizar fotos: cree una página HTML y primero inserte estas líneas en ese archivo:

<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> 
0

A continuación, crear acceso directo en el navegador con el código Javascript, se haga clic en el Ver más vínculo y desplazando hasta que todo el resultado se muestra en la página:

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

Después de eso, crear otro acceso directo y ejecutar este js código para recuperar todos los UID del resultado de búsqueda:

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); 
Cuestiones relacionadas