2010-01-07 5 views
26

Je suis un étudiant diplômé dont la recherche est un réseau complexe. Je travaille sur un projet qui implique l'analyse des connexions entre les utilisateurs de Facebook. Est-il possible d'écrire un robot d'exploration pour Facebook en fonction des informations d'amitié?Comment parcourir Facebook en fonction des informations sur l'amitié?

J'ai regardé autour de moi mais je n'ai rien trouvé d'utile jusqu'à maintenant. Il semble que Facebook n'aime pas cette activité. Puis-je me fier à l'API Facebook?

Mise à jour (Jan-08-2010): Merci beaucoup pour les réponses. Je suppose que j'ai probablement besoin de contacter directement Facebook alors. Cheers

Mise à jour (16 février 2011): Un nouveau livre, "Extraire le web social", vient de sortir. Dans celui-ci, il y a un chapitre entièrement consacré à l'exploitation minière de Facebook en utilisant Python. À votre santé.

+11

Avez-vous essayé de contacter Facebook et de leur demander s'ils fournissent des données de recherche anonymisées? –

+0

Je vous suggère de lire (et de suivre) leur politique, en particulier la section «Stockage et utilisation des données que vous recevez de nous» sur http: //developers.facebook.com/policy/ –

+0

Je me souviens d'avoir vu une 'application' où l'on analysait quels amis sont également amis avec d'autres afin de construire un 'réseau'. Kinda semble pouvoir utiliser ce dont vous avez besoin. Je pense que ça s'appelait un cercle social ou quelque chose du genre. –

Répondre

10

Vous ne pouvez malheureusement pas compter sur l'API Facebook. Pour obtenir des informations d'ami, vous devez utiliser quelque chose comme friends.get(). Cependant, toute méthode de l'API Facebook qui renvoie des informations utilisateur comme celle-ci nécessite que vous ayez une clé de session active de cet utilisateur, et généralement la façon dont vous obtenez une clé de session active est que l'utilisateur accède à votre application ou page Facebook. En résumé, l'information dont vous parlez est essentiellement privée. Vous ne pouvez pas choisir une personne sur Facebook, obtenir ses amis, et obtenir les amis de ces amis, et ainsi de suite. Pour moi, c'est une bonne chose pour la vie privée, mais bien sûr cela empêche toute analyse arbitraire. Je lancerais l'idée d'écrire une application rapide et sale avec un certain attrait de l'utilisateur que vous pourriez utiliser pour la recherche. Si un groupe comme S**t My Dad Says (drôle, pas très sûr pour le travail) peut recevoir 120 000 utilisateurs en quelques mois, vous pouvez probablement plaider votre cas avec une petite application de recherche et obtenir un nombre raisonnable d'utilisateurs.

+4

"..plead your case .." ou vous pouvez simplement le faire comme la plupart des entreprises le font et Construisez une application simple et cool et ne dites à personne comment vous allez vraiment utiliser cette information. – NotMe

+0

Minas Gjoka, Maciej Kurant, Carter T Butts, Athina Markopoulou semblent avoir réussi à contourner ce problème ou il était possible en 2010, au moins, ils ont beaucoup d'informations sur l'amitié http://minasgjoka.com/publications.html – Aufziehvogel

1

Le problème est que l'information d'amitié de facebook est typiquement privée et seulement accessible aux amis. Il devrait être beaucoup plus facile de construire ce réseau sur Twitter, si c'est une option pour vous.

+0

Pouvez-vous me donner quelques indications? Mon principal intérêt est le réseau social, donc Twitter est une option. Merci. – knguyen

+0

Vous pouvez commencer à partir de http://apiwiki.twitter.com/Twitter-REST-API-Method:-statuses%C2%A0friends –

1

Comme d'autres l'ont indiqué, il s'agit généralement d'informations privées. Si, toutefois, Facebook n'est pas une exigence, vous pouvez utiliser Social API de Google. Extrait de la page API Google Social Graph: «Grâce à l'API Social Graph, les développeurs peuvent désormais utiliser les connexions publiques que leurs utilisateurs ont déjà créées dans d'autres services Web, ce qui rend les informations sur les connexions publiques entre personnes facilement disponibles et utiles.

Voici un article sur l'utilisation dans Ruby: http://articles.sitepoint.com/article/google-social-graph-api-ruby-rails#

1

Ce poste de lifecode fournir un script python de base pour gratter vos amis facebook contact info. La sortie de ce script est l'identifiant du profil, le profil du profil, l'URL du profil, l'adresse e-mail et le numéro de téléphone portable (si fourni par un ami). AVERTISSEMENT: Ceci est contre Facebook TOS. À utiliser à vos risques et périls. Infos fournies à des fins d'enseignement et de recherche http://ruel.me/blog/2010/11/26/scrape-your-facebook-friends-contact-info-with-python/

0

Vous pouvez utiliser http://www.facebook.com/directory/ pour obtenir les personnes cotées en bourse.

+0

Bienvenue à Stack Dépassement! Merci pour votre message! Merci de ne pas utiliser les signatures/slogans dans vos messages. Votre boîte utilisateur compte comme votre signature, et vous pouvez utiliser votre profil pour publier toute information sur vous que vous aimez. [FAQ sur les signatures/slogans] (http://stackoverflow.com/faq#signatures). Surtout ne pas inclure de liens vers votre site dans vos messages, ou vos messages pourraient être marqués comme spam. –

+0

Aussi, cependant; votre lien ne répond pas à la question posée. Il ne s'agissait pas d'obtenir une liste brute des membres de Facebook - il s'agissait d'analyser les relations des membres. –

Questions connexes