如何在不登录PHP cURL的情况下获得Instagram公共订阅源



我想从"https://www.instagram.com/{用户名}/__a=1";。当我在浏览器中手动键入url时,它会向我显示JSON,但当我使用PHP cURL运行代码时,它将我重定向到Instagram登录页面。有没有办法用PHP cURL中的代理或cookie来修复它?

我的代码是:

$username = 'kyliejenner';
$url = 'https://instagram.com/'. $username .'/?__a=1';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: application/json') );
$data = curl_exec($ch);
curl_close($ch);
var_dump($data); // Show the response

我从使用cURL PHP 获取instagram公共JSON提要中获得代码

Instagram似乎正在检查标题,以及是否包含会话cookie(待确认(在我的项目中,它工作了几天,直到我得到一个错误429。几天后,它在发送JSON 之前请求登录

这是我的头,工作了几天

'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',
'accept-language': 'fr-FR,fr;q=0.9,en-US;q=0.8,en;q=0.7',
'sec-fetch-dest': 'document',
'sec-fetch-mode': 'navigate',
'sec-fetch-site': 'none',
'sec-fetch-user': '?1',
'upgrade-insecure-requests': '1',
'user-agent': 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.192 Mobile Safari/537.36'

相关内容

最新更新