Мне нужно отслеживать количество пользователей группы facebook и отображать его на сайте. Я знаю, что можно получить идентификаторы пользователей с помощью их API, но они ограничены только 500 (если общее количество участников составляет 500+).
Каким будет самый простой способ получить общее количество участников, которые подписались в группу Facebook, которую я создал? Это вообще возможно?

Если вы пишете http-бота, его не должно быть очень сложно выбросить, учитывая, что производительность в реальном времени не является ключевым фактором.
Согласно документации для Groups.getMembers невозможно получить> 500 членов группы с помощью вызова API. Хуже того, вы, кажется, сможете получить только 500 членов случайный.
Возможно, вы захотите вместо этого рассмотреть возможность использования Facebook Connect со своим сайтом. Я не эксперт по Connect, но я считаю, что у вас не возникнет этой проблемы с его использованием, поскольку вы на самом деле пишете код для Facebook - похоже, нет смысла ограничивать результаты. По крайней мере, в этом направлении я бы посмотрел.
Удачи.
Вы можете сделать это с помощью FQL-запроса следующим образом:
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
...
Сделайте это внутри цикла (пока не получите 0 результатов), и вы получите общее количество участников группы.
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)
Вы даже можете присоединиться к пользовательской таблице FQL, чтобы получить всю информацию о пользователе:
SELECT uid, name, pic_square FROM user WHERE uid IN (
SELECT uid FROM group_member WHERE gid = <group_id> limit 500 offset %d )
Мадарко, не могли бы вы выразиться более откровенно, разместив весь код, пожалуйста?