una - ¿Es posible/cómo obtener el número de miembros de un grupo de Facebook en particular(incluso si el número de ellos es 500+)?
grupos de facebook (3)
Necesito controlar el número de usuarios del grupo de Facebook y mostrarlo en el sitio web. Sé que es posible obtener ID de usuario usando su API, pero están limitados a 500 solamente (si el número total de miembros es 500+).
¿Cuál sería la forma más fácil de obtener el número total de miembros que se registraron en un grupo de Facebook que yo había configurado? ¿Es esto posible?
Si escribe un bot http, no debería ser muy difícil eliminarlo, dado que el rendimiento en tiempo real no es la clave.
De acuerdo con la documentación de Groups.getMembers
no es posible obtener> 500 miembros del grupo con una llamada API. Peor aún, parece que solo puede obtener 500 miembros aleatorios .
Es posible que desee considerar usar Facebook Connect con su sitio en su lugar. No soy un experto en Connect, pero creo que no tendrás este problema ya que estás escribiendo un código específico para Facebook, parece que no tendría sentido limitar los resultados. Esa sería la dirección que buscaría, al menos.
Buena suerte.
Puedes hacerlo con una consulta FQL como esta:
SELECT uid FROM group_member WHERE gid = <group_id> limit 500
SELECT uid FROM group_member WHERE gid = <group_id> limit 500 offset 500
SELECT uid FROM group_member WHERE gid = <group_id> limit 500 offset 1000
...
Obtenga la cantidad de miembros
Hazlo dentro de un bucle (hasta que obtengas 0 resultados) y obtendrás el número total de miembros del grupo
perPage = 500
for count in range(100):
res = fql(''SELECT uid FROM group_member WHERE gid = %s limit %d offset %d'' % (fbUserId, perPage, perPage * count))
if len(res) == 0:
break
friends += len(res)
Obtenga los detalles de los miembros
Incluso puede unirse a la tabla FQL del usuario para tener todos los detalles del usuario:
SELECT uid, name, pic_square FROM user WHERE uid IN (
SELECT uid FROM group_member WHERE gid = <group_id> limit 500 offset %d )