Maxy.fr

Récupérer le nombre de j'aime et de tweet d'une url en PHP

Il peut être intéressant de récupérer le nombre de fois qu'une url a été partagée sur Twitter ou le nombre de fois où elle a été "aimée" sur Facebook. Sachez qu'il est plutôt facile d'obtenir ces informations et de les récupérer à l'aide d'un script PHP.

Twitter : Récupérer le nombre de fois qu'une url a été partagée :

Twitter fournis dans son api pour développeur une url retournant ce résultat au format JSon.

L'url en question est la suivante : http://urls.api.twitter.com/1/urls/count.json?url=[URL]

L'argument [URL] étant l'adresse de la page pour laquelle vous souhaitez obtenir les informations.

Le résultat sera comme dit plus haut au format JSon, de la forme suivante :

{"count":19466950,"url":"http://www.google.com/"}

Voici une fonction simple permettant la récupération de la valeur en PHP :

function getCountTwitter($page)
{
	$url = "http://urls.api.twitter.com/1/urls/count.json?url=".urlencode($page);
	$data = json_decode(file_get_contents($url));

	if(!isset($data->count)){ return 'erreur'; }

	return $data->count;
}

La fonction retournera donc le nombre de fois où l'url ($page) a été citée dans un tweet, ou "erreur" en cas d'erreur.

Facebook : Récupérer le nombre de "J'aime" d'une page :

Comme pour Twitter, Facebook fournis dans son api une url permettant d'obtenir ces informations.

L'url est donc : https://api.facebook.com/method/links.getStats?urls=[URL]&format=json

Le résultat sera lui aussi au format JSon et de la forme suivante :

[{"url":"http://www.google.com/","normalized_url":"http://www.google.com/","share_count":5375040,"like_count":1368662,"comment_count":1727801,"total_count":8471503,"click_count":265614,"comments_fbid":381702034999,"commentsbox_count":841}]

Ici on obtient davantage d'informations. Je ne détaillerais pas, les noms sont assez explicites.

Ce qui nous intéresse nous c'est de récupérer le nombre de "j'aime", voici donc une fonction PHP permettant d'extraire cette valeur :

function getCountLikeFacebook($page)
{
	$url = "https://api.facebook.com/method/links.getStats?urls=".urlencode($page)."&format=json";
	$data = json_decode(file_get_contents($url));

	if(!isset($data[0]->like_count)){ return 'erreur'; }

	return $data[0]->like_count;
}

 

Catégories : PHP

Par Guillaume le 24/02/2014 à 02:09

Partager l'article :

Articles similaires

Trier un tableau multidimensionnel en PHP

Il arrive parfois que l'on doivent trier un tableau contenant d'autres tableau suivant des valeurs pas directement accessibles. En soit on se retrouve bloqué car les fonctions de tries classique (asort(), ksort() ...) ne permettent pas de trier comme on le souhaite notre tableau. Sachez...

Enregistrer un tableau PHP dans un fichier

Il est parfois utile d'enregistrer dans un fichier des données en provenance d'un code PHP. Sachez qu'il est plutôt simple d'enregistrer un tableau de données dans un fichier en utilisant la fonction serialize().   Voici le code permettant d'enregistrer les données...

Utiliser la programmation pour résoudre un problème mathématiques

Vous avez sûrement entendu parlé de cet exercice de mathématiques qui fait tant parler de lui depuis quelques jours sur internet. Cet exercice a priori simple qu'un professeur Vietnamien a donné à faire à ses élèves d'une classe...