查询喜欢我的Facebook页面的用户

我想知道是否有可能查询以下内容:

  • (所有)喜欢我的Facebook页面的用户的列表
  • 这些用户已公开提供的附加信息(除了姓氏和名字)

基本上看,如果可能的话,生成喜欢我的脸书页面的用户的详细的营销统计。 任何build议或替代的欢迎。

谢谢。

恐怕这是不可能的,按照这个错误的更多信息。

另一个certificate是page_fan表,你会注意到只有uid字段是可以索引的,所以你需要知道用户id来search它,而不是page_id ,因为你知道如果用户“ 喜欢 ”一个页面,这将意味着他是一个“ 粉丝 “的页面。


在积极地使用Facebook API一段时间后,随着公告和API发布(以及弃用),以及政策的介绍和变更,我可以理解Facebook只会分享他们的用户信息,让他们明确地做所以(又名交互/授权您的应用程序)。

因此,如果没有这种function,最好的做法是:

  1. 通过Page Insights了解您的受众
  2. 收集粉丝的兴趣和信息通过创build自定义应用程序通过页面标签和使用其他Facebookfunction,如问题

好吧,没有人想要打破Facebook的TOS,但他们已经绑定了我们自己的基本数据。 所以,刮是非法的,但不是保存一个页面。 我已经做了什么(并注意,我需要这个为脱机目的无论如何):转到https://www.facebook.com/browse/?type=page_fans&page_id= {范围页ID}向下滚动,直到你有所有的球迷。 把这个页面保存在你的本地机器上,比方说Facebook.html。 现在,使用ruby和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} 

这是可能的,而不是与FQL了。

做一个https://www.facebook.com/browse/?type=page_fans&page_id= {FAN PAGE ID}的GET,并刮掉用户。

中提琴。

做一个图search喜欢这个:“谁喜欢[你的粉丝的名字]”。 你会得到所有的结果。

然后用这个JavaScript代码在你的浏览器上创build快捷方式,它将点击查看更多链接并滚动,直到所有结果都显示在页面中:

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

之后,创build其他快捷方式并运行此js代码以从search结果中检索所有UID:

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

屏幕上将出现一个textarea框,其中包含所有的uid。 只需将其复制到记事本中,然后导入Facebook广告pipe理系统中的自定义受众群体即可。

我每天创build和使用这个代码,以获得所需的标准所有的UID。 你可以启动任何你想要的图表search。 这是自制代码,所以使用它没有你自己的责任:)

享用它们。

现在,您可以通过此链接获取您网页上的用户,或者点击设置button,而不是左侧的用户。 https://www.facebook.com/%5BPAGENAME%5D/settings/?tab=people_and_other_pages

如果你想得到所有用户的照片,按F12键,并将这些代码添加到控制台:

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

比,当你到达页面的底部:

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

要显示照片,请创build一个HTML页面,并首先将这些行插入到该文件中:

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

然后用这个JavaScript代码在浏览器上创build快捷方式,它将点击查看更多链接并滚动,直到所有结果都显示在页面中:

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

之后,创build其他快捷方式并运行此js代码以从search结果中检索所有UID:

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

你可以得到它使用Facebook的开放图。

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

例如 :

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

你需要发送graphicsAPI调用使用“ID”更多关于用户喜欢你的页面的细节。

但是,这个调用将检索页面(Chickfila)喜欢的其他Facebook对象,而不是那些喜欢Chickfila页面的用户。