跟踪喜欢Instagram通过Cron Job

时间:2015-09-06 09:07:22

标签: php instagram instagram-api

我已经设置了一个cron作业来跟踪谁喜欢我在Instagram上的特定媒体。

我正在从实时订阅中保存媒体ID,然后查询api以获得谁喜欢它并在每1小时后保存用户ID,工作正常但未优化,因为它需要太多的服务器请求。

任何更好的解决方案。下面是我的代码片段。

<?php 
while($row = mysqli_fetch_assoc($r)){
$media_id=$row['media_id'];
$url='https://api.instagram.com/v1/media/'.$media_id.'/likes?access_token='.$access.'';
$inst_stream = callInstagram($url);
$results = json_decode($inst_stream, true);
foreach($results['data'] as $item){
$insta_id=$item['id'];
// insert & update code
}}
?>

1 个答案:

答案 0 :(得分:0)

我认为您希望保持在某些API速率限制范围内。

似乎Instagram不允许传递多个media_id,因此每个媒体ID都会遇到一个请求。

如果要跟踪的项目数量(media_id)超过每小时限制,那么我建议按小时批量拆分请求。

实施例。如果每小时费率限制为5000个请求,并且您需要跟踪10000个图像,
然后分两批分割您的媒体ID和 你将使用一些参数运行两个脚本或两次相同的脚本。

Instagram提供了一些有关限速配额的信息,
https://instagram.com/developer/limits/ 有关全局费率限制的信息包含在每个通话响应的HTTP标头中,这使您的应用可以确定其与这些费率限制相关的当前状态。

这完全取决于您需要跟踪的项目数量,
但您所能做的就是解决每个访问令牌每小时5000个请求的速率限制。

您仍会按媒体ID发送一个请求。