获取Instagram';s使用Curl的追随者数据


Getting Instagram's followers data using Curl

我正试图通过网络抓取和curl来获取instagram帐户的关注者数量。使用他们的API可能更容易,但我想知道为什么这不起作用,因为在许多情况下,我是通过HTML获得数据的。

static $url='https://www.instagram.com/cats_of_instagram/';
function getUrlContent($url){
    try {
    $curl_connection = curl_init($url);
    curl_setopt($curl_connection, CURLOPT_CONNECTTIMEOUT, 30);
    curl_setopt($curl_connection, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl_connection, CURLOPT_SSL_VERIFYPEER, false);
    //Data are stored in $data
    $data = (curl_exec($curl_connection));
        $position = strpos($data,"<span data-reactid='".0.1.0.0:0.1.3.1.0.2'"> followers</span>");
        print_r($position);

     curl_close($curl_connection);
    } catch(Exception $e) {
    return $e->getMessage();
    }
}

问题是函数strpos不返回位置。

$position = strpos($data,"<span data-reactid='".0.1.0.0:0.1.3.1.0.2'"> followers</span>");

你不能那样做。

页面加载后,您要查找的元素由javascript呈现。

curl不等待脚本运行(也不运行任何脚本)。它只是返回html。

您可以通过打印$data轻松验证这一点。或者通过查看页面的来源。

要"查看"您要查找的元素,您需要使用DOM检查器。