Exporter les posts d’une page Facebook

Exporter les posts d’une page Facebook est moins simple que l’on pourrait le croire. Normal vu que cette plateforme veut conserver ses utilisateurs et quel meilleur moyen pour cela que de les priver d’une partie de leur “histoire” s’ils partent. Heureusement avec l’API Graph et un peu de compétence, il est possible de récupérer partiellement nos données.

Première étape, récupérer l’identifiant de votre page. Pour cela il faut saisir le nom de la page dans le champ de requête de la page suivante : https://developers.facebook.com/tools/explorer/

Seconde étape, muni de l’identifiant il est possible de récupérer les posts de votre page. La requête suivante permet d’obtenir le minimum d’informations utiles. Sachez qu’il est aussi possibles d’enrichir l’extraction avec les likes, les commentaires et les partages.

[page_id]/posts/?fields=message,link,permalink_url,created_time,type,name,id&limit=100
Voici un extrait du JSON obtenu :

{
  "data": [
    {
      "message": "Veeraphol Sahaprom distribue des pralines dans cette compilation des meilleurs moments. Originaire de Thaïlande, il a été champion du monde des poids coqs WBA et à défendu son titre 14fois.
#boxeanglaise #WBA  Veerapol Nakhonluang
https://www.facebook.com/MuayThaiScholar/videos/10160621726760298/",
      "link": "https://www.facebook.com/MuayThaiScholar/videos/10160621726760298/",
      "permalink_url": "https://www.facebook.com/757819574382190/posts/1062881273876017/",
      "created_time": "2018-08-13T06:45:00+0000",
      "type": "video",
      "name": "Muay Thai Scholar",
      "id": "757819574382190_1062881273876017"
    },
    {
      "message": "J'ai regardé presque toutes les vidéos de la série \"Au bout du tunnel\" faites par GONG - Gi Or No Gi. Pour vous donner envie de les voir, je pense que cette compilation d'extraits est la meilleure des voies.
https://www.youtube.com/watch?v=fC3NVJItt78",
      "link": "https://www.youtube.com/watch?v=fC3NVJItt78",
      "permalink_url": "https://www.facebook.com/757819574382190/posts/1062565847240893/",
      "created_time": "2018-08-07T06:45:01+0000",
      "type": "video",
      "name": "Fighting Spirit : Au bout du tunnel",
      "id": "757819574382190_1062565847240893"
    }
  ],
  "paging": {
    "cursors": {
      "before": "Q2c4U1pXNTBYM0YxWlhKNVgzTjBiM0o1WDJsa0R5UTNOVGM0TVRrMU56UXpPREl4T1RBNkxUa3lNRGMzT1RJME1USTRNVEEyTURrNE5qRVBER0ZA3YVY5emRHOXllVjlwWkE4ZA056VTNPREU1TlRjME16ZA3lNVGt3WHpFd056ZAzBPVE0xTnpnNU9ERTBOVE1QQkhScGJXVUdXM3IxckFFPQZDZD",
      "after": "Q2c4U1pXNTBYM0YxWlhKNVgzTjBiM0o1WDJsa0R5TTNOVGM0TVRrMU56UXpPREl4T1RBNk1UVXpOakExTVRnME1qYzRPVEV5T1RrNE5nOE1ZAWEJwWDNOMGIzSjVYMmxrRHg4M05UYzRNVGsxTnpRek9ESXhPVEJmT0RrM05qRTFNRFV6TnpNMU9UYzBEd1IwYVcxbEJsb2NVb1FC"
    },
    "next": "https://graph.facebook.com/v3.1/757819574382190/posts?access_token=--------&pretty=0&fields=message%2Clink%2Cpermalink_url%2Ccreated_time%2Ctype%2Cname%2Cid&limit=100&after=Q2c4U1pXNTBYM0YxWlhKNVgzTjBiM0o1WDJsa0R5TTNOVGM0TVRrMU56UXpPREl4T1RBNk1UVXpOakExTVRnME1qYzRPVEV5T1RrNE5nOE1ZAWEJwWDNOMGIzSjVYMmxrRHg4M05UYzRNVGsxTnpRek9ESXhPVEJmT0RrM05qRTFNRFV6TnpNMU9UYzBEd1IwYVcxbEJsb2NVb1FC"
  }
}

Maintenant vous pouvez travailler vos données. Si vous êtes à l’aise avec le JSON, c’est parfait. Sinon vous pouvez les convertir en CSV. Par sécurité, j’évite d’utiliser les convertisseurs en ligne mais comme les données sont déjà disponibles sur Internet par scraping ou par l’API Graph… Par exemple : https://json-csv.com

Vous pouvez aussi utiliser des scripts pour accélérer l’opération. J’ai trouvé – mais pas testé – un script Python qui devrait faire l’affaire : https://github.com/naveendennis/Python-Facebook-Extract-Page-Data