2016-03-24 5 views
0

Ich versuche, die Anzahl der Anhänger eines Instagram-Konto durch Web-Scrapping und Curl zu holen. Die Verwendung ihrer API mag einfacher sein, aber ich möchte wissen, warum das nicht funktioniert, weil ich in vielen Fällen die Daten über HTML erhalten habe.Get Instagram Follower-Daten mit Curl

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(); 
    } 
} 

Problem ist die Funktion strpos nicht Position zurück.

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

Antwort

0

Sie können das nicht tun.

Das Element, nach dem Sie suchen, wird nach dem Laden der Seite von JavaScript gerendert.

curl wartet nicht auf das Ausführen von Skripts (noch läuft es). Es gibt nur den HTML-Code zurück.

Sie können dies leicht überprüfen, indem Sie $data drucken. Oder indem Sie auf die Quelle der Seite schauen.

Um das gesuchte Element zu "sehen", müssen Sie den DOM Inspector verwenden.