从网站获取JSON(instagram)

时间:2018-02-07 21:53:30

标签: javascript python json

我最近有想法从Instagram帐户及其帖子中抓取信息,例如评论数量或喜欢的数量。到目前为止,我在使用chrome进行调试时发现,例如网络选项卡下的链接 https://www.instagram.com/instagram/?__a 会返回带有所需信息的JSON,但实际加载的内容仍然是正常的网站HTML代码。

json data

到目前为止,我尝试使用此代码进行python:

import urllib.request
r = urllib.request.urlopen(url)
print(r.read())

或javascript:

window.onload = function () {
    res = fetch("https://www.instagram.com/instagram/?__a", {
        method: 'get'
    }).then(function (data) {
        return data.json();
    }).catch(function (error) {
        console.log("ERROR".concat(error.toString()));
    });
    console.log(res.user);
};

所以我遇到的问题是,在使用这些功能时我只获得网站代码( html ),有没有办法只获取后台加载的JSON?我知道人们会推荐我使用instagram api,但我没有网站也没有公司可以注册。

2 个答案:

答案 0 :(得分:4)

我遇到了一个问题,试图让API做我想做的事情,而且实际上只需要JSON数据,包括特定帐户图像的网址和字幕。

使用以下GET请求:

https://www.instagram.com/account_name/?__a=1

其中account_name是我正在抓取的个人资料。

它返回我的任务所需的所有JSON。

答案 1 :(得分:1)

尝试在背景中加载Json对于一个简单的问题来说太多了。

你应该使用Instagram Api。把你的名字作为公司。