![](/img/trans.png)
[英]How to get likes of facebook friends using facebook graph api in python
[英]How to get friends likes via Facebook API
这有可能让我所有的朋友都喜欢吗? 现在,我通过两个步骤得到这个:
但这似乎是一个非常大的过程,任何人都有想法改善这项任务的性能?
最后我在2周后发现了Facebook API文档
FB.api("/likes?ids=533856945,841978743")
FB.api("me/friends",{
fields:'id',
limit:10
},function(res){
var l=''
$.each(res.data,function(idx,val){
l=l+val.id+(idx<res.data.length-1?',':'')
})
FB.api("likes?ids="+l,function(res){
console.log(res);
})
})
使用FQL
比循环使用Graph API结果要快。 您可以获得朋友喜欢的页面的ID,但遗憾的是FQL
不会返回FQL
信息(即名称)。 看一下以下内容。
这假设您正在使用带有friends_likes权限的PHP SDK。
// hold on to your user ID
$user_id = $facebook->getUser();
// query your friend's likes based on their ID
$query = "SELECT uid, page_id FROM page_fan WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = $user_id)";
$result = $fb->api(array(
'method' => 'fql.query',
'query' => $query,
));
// optionally group the results by each friend ID
function arraySort($input, $sortkey){
foreach ($input as $key => $val) {
$output[ $val [ $sortkey ] ][] = $val;
}
return $output;
}
$friendLikes = arraySort($result,'uid');
// output the results
echo sprintf('<pre>%s</pre>', print_r($friendLikes,TRUE));
这样做的好处是您只能进行一次API调用。 您必须单独调用以获取朋友的名称,而另一个调用喜欢的页面详细信息,但您现在可以通过简单的方法使用ID。
我相信这是唯一的方法。 几个星期前我看了这个问题。 不要以为他们已经改变了API。
http://developers.facebook.com/docs/reference/api/
编辑:我不确定我是否理解你的意思...如果你的意思是想要获得用户喜欢的帖子列表,你需要做的是:
那是你要的吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.