【问题标题】:Get the number of followers of an instagram account without using api不使用api获取instagram账号的关注者数量
【发布时间】:2021-05-01 09:41:36
【问题描述】:

我正在尝试通过以下方式获取 Instagram 帐户的关注者数量:

<?php 
$otherPage = 'nasa';
$response = file_get_contents("https://www.instagram.com/nasa/?__a=1");
if ($response !== false) {
    $data = json_decode($response, true);
    if ($data !== null) {
        $follows = $data['graphql']['user']['edgeedge_followed_by_follow']['count'];
        $followedBy = $data['graphql']['user']['']['count'];
        echo $follows . ' and ' . $followedBy;
    }
}
?>

但是好像不行,因为变量$data为null,所以这个条件为假:

if ($data !== null) {
        $follows = $data['graphql']['user']['edgeedge_followed_by_follow']['count'];
        $followedBy = $data['graphql']['user']['']['count'];
        echo $follows . ' and ' . $followedBy;
    }

谁能告诉我为什么?

【问题讨论】:

  • 我试过你的代码,$data 不是null,但是我收到了一堆关于尝试访问未定义索引的通知,所以看起来你没有得到正确的结构.
  • edgeedge_followed_by_follow 索引似乎是罪魁祸首。我猜你不小心在错误的索引中插入了正确的索引,而不是替换它。然后你将较低的索引留空(edge_follow 应该在哪里)。
  • 经过几次尝试,我在$data 中得到了null。当我访问该页面时,它要求我登录。所以我猜访问是有限的。

标签: php json web-scraping


【解决方案1】:

你的 $response 不是JSON,它返回Content-Type: text/html; charset=utf-8

他们禁用了这些旧版 API,请参阅 http://instagram.com/developer

【讨论】:

    猜你喜欢
    • 2022-08-21
    • 1970-01-01
    • 2019-07-11
    • 1970-01-01
    • 1970-01-01
    • 2014-08-13
    • 2019-03-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多