Il y a une "manière" faire partie de la liste de fans avec leurs identifiants de profils de certains fanpage sans jeton.
- Obtenir l'id d'une page publique de données de graphe: http://graph.facebook.com/cocacola - Coca-Cola a 40796308305.
- Obtenez de Coca-Cola ", comme plugin" iframe afficher directement avec certains modifié params: http://www.facebook.com/plugins/fan.php?connections=100&id=40796308305
- Maintenant, consultez la page des sources, il y a beaucoup de fans avec des liens vers leurs profils, où vous pouvez trouver leur profil id ou des surnoms comme: http://www.facebook.com/michal.semeniuk .
- Si vous êtes intéressé à profil id de l'utilisation de l'api graphique nouveau - cela va vous donner des id de profil directement: http://graph.facebook.com/michal.semeniuk .
Et c'est maintenant la meilleure partie: essayez d'actualiser (F5) le lien dans le point 2.. Il y a un nouveau jeu complet de l'autre les fans de Coca-Cola. Prenez seulement uniques et vous serez en mesure d'obtenir de bons, presque liste complète des fans.
-- Mise à JOUR 2013.08.06 --
Pourquoi n'utilisez-vous pas de mon prêt script PHP pour récupérer une partie des fans? :)
function fetch_fb_fans($fanpage_name, $no_of_retries = 10, $pause = 500000 /* 500ms */){
$ret = array();
// get page info from graph
$fanpage_data = json_decode(file_get_contents('http://graph.facebook.com/' . $fanpage_name), true);
if(empty($fanpage_data['id'])){
// invalid fanpage name
return $ret;
}
$matches = array();
$url = 'http://www.facebook.com/plugins/fan.php?connections=100&id=' . $fanpage_data['id'];
$context = stream_context_create(array('http' => array('header' => 'User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:22.0) Gecko/20100101 Firefox/22.0')));
for($a = 0; $a < $no_of_retries; $a++){
$like_html = file_get_contents($url, false, $context);
preg_match_all('{href="https?://www\.facebook\.com/([a-zA-Z0-9._-]+)" data-jsid="anchor" target="_blank"}', $like_html, $matches);
if(empty($matches[1])){
// failed to fetch any fans - convert returning array, cause it might be not empty
return array_keys($ret);
}else{
// merge profiles as array keys so they will stay unique
$ret = array_merge($ret, array_flip($matches[1]));
}
// don't get banned as flooder
usleep($pause);
}
return array_keys($ret);
}
print_r(fetch_fb_fans('TigerPolska', 2, 400000));
// prints 73 unique fan names as array