Instagram粉丝统计剧本把我难倒了。(PHP) [英] Instagram follower count script has me stumped. (PHP)

查看:25
本文介绍了Instagram粉丝统计剧本把我难倒了。(PHP)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个脚本,可以显示客户Instagram关注者的股票代码(&Q;)。

几周(或几个月)前,它停止工作,并且刚刚显示了";0";。

我已经尝试了FILE_GET_CONTENTS和cURL,但似乎都不起作用。

或者更准确地说...它们工作大约5秒,然后再次停止。

奇怪的是,如果我转到图形URL(https://www.instagram.com/account_name_here/?__a=1),我可以看到它吐出的JSON,无论我重新加载页面多少次。

但是,正在运行以下代码:

$ch2 = curl_init();
$url = "https://www.instagram.com/account_name_here/?__a=1";
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch2, CURLOPT_URL,$url);
$result=curl_exec($ch2);
curl_close($ch2);

$data = json_decode($result, true);
$followerCount = $data['graphql']['user']['edge_followed_by']['count'];
echo "Followers: ".$followerCount;

不吐任何东西。

对该代码的其他各个部分执行var_ump(),包括$Result和$data,强化了这样一种想法,即实际上没有什么东西被拉进来。

例如,如果我执行var_ump($RESULT),它会输出:

字符串(0)

尤其令人恼火的是,当我第一次改用curl来替代FILE_GET_CONTENTS时,它起作用了。然后,当我将其上传到网站后,它再次停止工作。

知道我在这里错过了什么吗?为什么当我转到实际的Instagram URL时,我可以很好地看到数据,但只要我尝试通过PHP拉取它,它就不起作用了?

TIA!

推荐答案

考虑使用以下代码‘调试’该问题:

$info = curl_getinfo($ch2);
echo "Followers: " . $followerCount . PHP_EOL;
echo "HTTP: " . $info['http_code'] . PHP_EOL;
echo "URL: " . $info['url'] . PHP_EOL;

记录此信息,但出现与您所述相同的问题(前3个请求工作正常,然后显示NULL显示此信息;

NULL
Followers: ?
HTTP: 200
URL: https://www.instagram.com/accounts/login/?next=/account-name/%3F__a%3D1

该问题似乎是Instagram将请求重定向到登录页。

请查看有关API登录请求的this答案。

这篇关于Instagram粉丝统计剧本把我难倒了。(PHP)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆