【问题标题】:How to use Instagram graphql to get profile posts urls?如何使用 Instagram graphql 获取个人资料帖子网址?
【发布时间】:2018-09-18 06:40:30
【问题描述】:

我正在尝试获取 Instagram 个人资料的帖子网址。

通过以下内容,我可以获得个人资料主页的 json,其中包括前 12 个帖子网址,因为其余网址是在向下滚动个人资料页面时加载的。

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

此外,我还可以获得一个 json,其中包括遵循给定配置文件的用户,并通过更改“first=XXXX”的值获得尽可能多的用户。 (您需要登录到 Instagram)

https://www.instagram.com/graphql/query/?query_id=17851374694183129&id=590087950&first=100

我怎么可能获得该用户的帖子列表,包括 url(最重要的),但也可能是使用 Instagram graphql 获得该帖子的喜欢或 cmets 的信息?

事实上,我需要的是帖子的 ID( /p/ 之后的部分),这样我就可以制作这样的网址: https://www.instagram.com/p/Bg1DhGmDAsU/

【问题讨论】:

    标签: web-scraping instagram graphql


    【解决方案1】:

    几天以来,获取最新帖子的 ?__a=1 方式被阻止。

    要从 Instagram 个人资料中获取最后 15 个帖子,您必须获取 url 并提取 _sharedData JSON

    Javascript

    let url = "https://www.instagram.com/"+username;
    $.ajax({
        type: 'GET',
        url: url,
        error: function () {
            //..
        },
        success: function (data) {
            data = JSON.parse(data.split("window._sharedData = ")[1].split(";</script>")[0]).entry_data.ProfilePage[0].graphql;
            console.log(data);
        }
    })
    

    您可以在客户端或服务器端执行此操作而无需登录。

    【讨论】:

      猜你喜欢
      • 2017-09-19
      • 1970-01-01
      • 1970-01-01
      • 2022-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多