graph.facebook.com查询限制来检索url的份额数?

时间:2012-12-01 18:15:14

标签: php facebook-graph-api

您可以使用http://graph.facebook.com/http://www.mysite.com/my-post/

获取json在Facebook上分享任何网址的次数

所以 - 随机捣乱的帖子:http://graph.facebook.com/http://mashable.com/2012/11/30/facebook-cover-photo-crackdown/

目前给我:

{
   "id": "http://mashable.com/2012/11/30/facebook-cover-photo-crackdown/",
    "shares": 1663
}

我有大约2,000个网址,我想循环将“Facebook共享”列添加到网址效果统计信息表中。

这是我的代码

foreach($mergeddata as $item) {
   $url = "$item['url']; 
   $graphurl = "http://graph.facebook.com/";
   $fb = json_decode(file_get_contents($graphurl.$url), true);
   echo "<td>"; 
   if(isset($fb['shares'])) {
   echo $fb['shares'];
   } 
 else {
  echo 0;
 }
echo "</td>";
}

我正在使用isset,因为有可能这些网址中的一些从未被fb共享。

问题和我的问题。

我在WAMP对我大吼大叫之前得到了480行结果“致命错误:C:\ wamp \ www中超出了60秒的最大执行时间......”

此操作真的花了太长时间 Facebook是否会在某个时刻切断我,导致循环超时?我没有使用任何类型的api密钥,所以他们可以通过我的IP地址关闭我吗?

我知道可能有一种更有效的方法来执行此操作,例如批处理请求或FQL进行一次调用并将结果与​​我现有的表绑定...但这看起来很复杂。

任何想法或帮助都将受到赞赏。

0 个答案:

没有答案