2. SOMMAIRE
Description de l’organisme d’accueil.
Introduction (sujet du projet et travail demandé).
Définitions générales.
Etude de besoin.
Etude Comparative entre les APIs développeurs des réseaux sociaux.
Décision (choix d’une API pour la deuxième partie).
Exploitation de l’API pour la réalisation du travail.
Présentation du résultat final.
Conclusion.
4. INTRODUCTION
Sujet : Recherche de profils et extraction d'information à partir de Réseaux Sociaux en ligne (Exploiter les
API pour développeurs).
Travail demandé :
• Etudes comparative entre les différentes APIs de Facebook, LinkedIn et Viadeo et sélection d’une
API pour travailler avec.
• Exploitation de l’API pour la recherche de profil utilisateur dans le réseau social et extraction
d’information.
• Développement d’une simple IHM pour la visualisation des résultats.
PRÉSENTATION DU STAGE DE COURTE DURÉE
4
5. DÉFINITIONS
Définition d’une interface de programmation.
Définition d’une API réseau social.
Définition d’un réseau social en général.
• Facebook
• LinkedIn
• Viadeo
PRÉSENTATION DU STAGE DE COURTE DURÉE 5
6. ÉTUDE DE BESOIN
Une part importante de l'information est
véhiculée uniquement par les réseaux sociaux.
Selon Facebook, comme étant l’un des réseaux
sociaux les plus fameux, il compte aujourd’hui
plus d’un milliard d’utilisateurs, donc les réseaux
sociaux comportent Une immense quantité de
données qui peut nous servir et il serait
dommage de laisser ces opportunités
inexploitées.
PRÉSENTATION DU STAGE DE COURTE DURÉE 6
7. ÉTUDE DE BESOIN
L’intégration des APIs donne la possibilité de diffuser le contenu d’un site internet sur un autre site.
L’intégration des APIs permet aux entreprises :
• d’accroître le nombre d’utilisateurs.
• d’augmenter les taux de conversion.
• de promouvoir leur marque et d’augmenter leur chiffre d’affaires.
PRÉSENTATION DU STAGE DE COURTE DURÉE 7
8. ÉTUDE COMPARATIVE
Base d’utilisateurs (Chiffres réseaux sociaux 2014-Blog de modérateur):
-Nombre d’utilisateurs actifs mensuel par réseau social-
Facebook LinkedIn Viadeo
1,32 milliard 187 millions 60 millions
PRÉSENTATION DU STAGE DE COURTE DURÉE
8
9. ÉTUDE COMPARATIVE
Les fonctionnalités de base et documentation.
La présence d’une plate-forme destinée aux développeurs.
Présence et qualité des outils de développement.
Sécurité et respect de la vie privée.
PRÉSENTATION DU STAGE DE COURTE DURÉE
9
10. ÉTUDE COMPARATIVE
Base de développeurs :
-Estimation du nombre de développeurs (Février 2009)-
Facebook LinkedIn Viadeo
Nombre de membres sur les forums officiels 20547 13077 127
Nombre de sujets postés relatifs au
développement
25788 354 23
PRÉSENTATION DU STAGE DE COURTE DURÉE 10
11. DÉCISION
Au vu de la comparaison effectuée ci-avant, nous avons décédé de choisir L’API
Facebook comme une meilleure base pour le développement.
PRÉSENTATION DU STAGE DE COURTE DURÉE 11
12. EXPLOITATION DE L’API POUR LA RÉALISATION DU TRAVAIL
Fonctionnement général de la plate-forme et enregistrement d’applications :
PRÉSENTATION DU STAGE DE COURTE DURÉE 12
13. EXPLOITATION DE L’API POUR LA RÉALISATION DU TRAVAIL
Cheminement complet d'une requête
l'application est physiquement hébergée sur un
autre serveur et il est donc nécessaire que
Facebook communique avec ce serveur via le
réseau.
Pour qu'une page d'une application puisse être
chargée, différents échanges de données à
travers HTTP sont nécessaires.
PRÉSENTATION DU STAGE DE COURTE DURÉE 13
14. EXPLOITATION DE L’API POUR LA RÉALISATION DU TRAVAIL
Développement (technologies utilisées):
PRÉSENTATION DU STAGE DE COURTE DURÉE 14
15. EXPLOITATION DE L’API POUR LA RÉALISATION DU TRAVAIL
Difficultés rencontrées et limite des outils exploités.
Implémentation (un peu de code) :
PRÉSENTATION DU STAGE DE COURTE DURÉE
15
Le Centre de Développement des Technologies Avancées (CDTA) a été crée en 1982 Baba hassein Alger en tant que Centre de Développement des Techniques Avancées il a été consédéré comme meillieur centre de recherche en algérie, Le Centre est composé des plusieur laboratoires : et on a été au cours de notre stage au niveau du laboratoire Architecture des systèmes et multimédia, bureau de Mlle sekkai lamia notre encadreur durant le stage.
Au cours de notre comparaison nous avons basé sur** le nombre d’utilisateurs **actuels qui représente le volume des données stockées et les fonctionnalités disponibles de base.
Nous avons accordé une importance particulière à **la présence d’une plate-forme ouverte **pour le développement d’applications et aux possibilités d’extension (extension du réseau par cette application faire étendre le réseau ),** la base de développeur**, la présence d’une communauté et **la qualité des outils de développement **qui seront également pris en compte dans notre choix.
Enfin nous avons vérifié que l’infrastructure permet un contrôle** sécurisé des informations des utilisateurs,** et un respect de leur vie privée.
Ce choix est motivé par différents points forts de ce dernier par rapport à ses concurrents considérés dans notre comparatif.
L’API Facebook s’est démarquée sur certains points : fonctionnalité de base très diverses, plate-forme de développement très extensible, outils de développement variés et complets, ainsi que le respect de la vie privée des utilisateurs. Il possède également une très grande base d’utilisateurs comparé à ces concurrents.
Egalement, beaucoup de programmeurs développent pour cette plate-forme, des communautés de développeurs assez importantes se sont formées et nombreux livres existent sur le sujet.
Nahder 3la ga3 les étapes ta3 développeurs omba3d création de l’application omba3d access token
1. l'utilisateur appelle la page en question auprès des serveurs de Facebook ;
2. Facebook appelle l'URL correspondante sur le serveur où l'application est hébergée ;
3. Le serveur de l’application effectue un certain nombre d’appels à l’API de Facebook ;
4. Les serveurs Facebook envoient une réponse en JSON/XML ;
5. Le serveur de l’application envoie une réponse en FBML ;
6. Les serveurs Facebook traitent la réponse envoyée et envoient une réponse en HTML classique à l’utilisateur.
l’installation de WampServer qui nous a obligés d’arrêter des services locaux dans le système (problème de port 80).
La manipulation de la plate-forme pour développeur pour la première fois.
Nous avons vu précédemment que Facebook doit être en mesure de communiquer avec le serveur sur lequel l'application est hébergée. Théoriquement cela fonctionne correctement, mais durant la phase de développement nous avons eu des complications par rapport au certificat d'authentification.
En effet, si l'application tourne sur la machine du développeur, en « local » (et c’est le cas pour notre application), Facebook n'est pas capable de la contacter directement. La machine de développement est derrière un ou plusieurs routeurs et ne possède pas une adresse IP publique joignable de l'extérieur. 17
Déployer l'application sur le serveur de production n'est pas une solution envisageable car elle nuirait grandement à la productivité du développeur. A chaque changement, aussi minime soit-il, l'application devrait être transférée sur ce serveur et relancée avant d'être testée.
Quant à notre application nous avons utilisé le serveur local « Apache » et nous avons rencontré tous ces problèmes que nous avons résolus avec un changement du code source dans le fichier facebook.php, mais généralement pour éviter ces désagréments, le passage par un tunnel SSH représente une bonne solution (hébergement payant). Un serveur accessible de l'extérieur est employé pour faire le pont et rediriger le flux HTTP vers la machine locale. Facebook contacte le serveur sur le port 1863. Le serveur transmet tout le trafic du port 1863 vers le port 3000 de la machine de développement à travers le tunnel SSH. Cela facilite donc les choses.