2017-06-17 2 views
0

Ich möchte alle Bilder von FB Seite Album in einem Klick herunterladen. Ich versuche den folgenden Code.Download Alle FB Seite Album Bilder mit Facebook Graph API

<?php 
$json = file_get_contents('https://graph.facebook.com/v2.3/1609936302636077/photos?access_token=MYTOKEN&pretty=1&limit=200'); 
$data = json_decode($json,true); 
foreach ($data['data'] as $page) { 
    echo $page[source]; 
    echo "<br>"; 
} 
?> 

Ich erhalte Bilder URLs aber FB eine Grenze von maximal 100 Bilder URL setzen auf einmal holen und dann URL geben sie Paging und dann 100 Bilder holen wieder.

Wie kann ich das umsetzen? Ich habe es mit Loops versucht, aber ich bin sehr schwach darin. Kann mir hier jemand mit dem Code helfen?

Antwort

0

Sie können rekursiv verwenden, um zur nächsten Seite zu gelangen. Aber wenn Seiten sehr viele Seiten haben. Dieser Code wird eine Ausnahmebestätigungsnachricht auslösen.

$token ='your token'; 
$url = "https://graph.facebook.com/v2.3/1609936302636077/photos?access_token=$token&pretty=1&limit=200"; 
getApiData($url); 
function getApiData($url){ 
    $json = file_get_contents($url); 
    $data = json_decode($json,true); 
    echo count($data['data']).'<br>'; 
    if(isset($data['paging']) && isset($data['paging']['next'])){ 
    getApiData($data['paging']['next']); 
    } 
} 

mit Methode Versuchen

  • Speichern nächste URL Datei in Text und Cronjob verwenden url und Ausführen von Code-Download-Datei zu lesen.
  • Verwenden Ajax
  • Verwenden Bibliothek schedule
Verwandte Themen