Если вы посещаете https://www.instagram.com/taylorswift/?__a=1
с помощью браузера, вы получаете JSON.
Если я запускаю curl -o output.json https://www.instagram.com/taylorswift/?__a=1
, я получаю JSON.
Однако, когда я пытаюсь загрузить, используя запрос в узле, например:
var headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:69.0) Gecko/20100101 Firefox/69.0',
'Content-Type' : 'application/x-www-form-urlencoded',
//'qs': {'__a': 1},
};
function abc (response) {
console.log('redirect',response.headers.location,response.request.href)
return true;
};
request({ url: 'https://www.instagram.com/taylorswift/?__a=1', headers: headers, followRedirect: abc}, function (err, response, body) {
console.log('error',err)
console.log('redirecting to ',response.request.uri.href)
console.log('body',body.length)
fs.writeFileSync('output.txt',body)
});
Я получаюстраница загрузки instagram, которая представляет собой просто набор бесполезных / обобщенных html и javascript.
И этот вывод:
0 | www |перенаправление https://www.instagram.com/accounts/login/ https://www.instagram.com/taylorswift/?__a=1
0 | www |ошибка null
0 | www |перенаправление на https://www.instagram.com/accounts/login/
0 | www |body 37818
Я просто хочу подсчитать количество подписчиков.
Есть идеи, почему запрос дает мне другой результат?