我需要存储一些关于粉丝页面的统计信息(比如计数,分享等),但是无法理解如何统计Page的总墙信息?最好是想要使用FQL,但任何想法都值得赞赏
答案 0 :(得分:1)
这里是代码(如计数,分享等)
$source_url = "http://www.flightpodcast.com/episode-6-john-bartels-qantas-qf30";
$url = "http://api.facebook.com/restserver.php?method=links.getStats&urls=".urlencode($source_url);
$xml = file_get_contents($url);//echo "<pre/>";print_r($xml);exit;
$xml = simplexml_load_string($xml);
echo "<b>Shares:</b> ".$shares = $xml->link_stat->share_count;echo "<br/>";
echo "<b>Likes:</b> ".$likes = $xml->link_stat->like_count;echo "<br/>";
echo "<b>Comments:</b> ".$comments = $xml->link_stat->comment_count;echo "<br/>";
echo "<b>Total:</b> ".$total = $xml->link_stat->total_count;echo "<br/>";
答案 1 :(得分:1)
对link_stat表运行FQL查询:
FQL: SELECT share_count,like_count,comment_count,total_count FROM link_stat WHERE url =“http://example.com”
PHP: $ facebook-&gt; api_client-&gt; fql_query('SELECT share_count,like_count,comment_count,total_count FROM link_stat WHERE url =“http://example.com”');
此FQL查询现在可能需要访问令牌 - 因此,如果上述操作失败,请尝试添加。
您还可以访问图表API:http://graph.facebook.com/?id=http://example.com。
答案 2 :(得分:0)
FQL在其API中没有COUNT函数,因此您必须自己获取所有帖子并自行计算。
您可以使用类似PHP的内容以下列方式执行此操作:
$fqlAPIParams = array(
'method' => 'fql.query',
'query' => '
SELECT post_id
FROM stream
WHERE actor_id = '.$pageId.' AND
source_id = '.$pageId.'
LIMIT 999999'
);
$result = $facebook->api($fqlAPIParams);
$postCount = 0;
foreach( $result as $post ) {
$postCount++;
}
希望这仍然可以帮助某人,因为这个问题很老了。