2015-01-08 10 views
0

Я являюсь членом группы facebook, и группа теперь насчитывает более 2000 членов, и кто-то задал вопрос: откуда все были. Холодный вопрос: приятно знать.Facebook Graph API: сбор статистических данных группы

Это заставило меня подумать: не было бы более удобного способа получить эту информацию? Итак, я пошел искать API-интерфейс, нашел API-интерфейс Facebook, нашел API explorer и встал прямо.

Итак, я создаю токен, и внутри этого токена я вообще объявляю, что мне разрешено использовать, но этот токен может только доступ ... вещи I может получить доступ.

Так, например, это возможно для меня

  • список моих групп
  • список членов одной из этих групп

Так что я предполагал, что я смог бы получить общественную информацию для тех, кто надеялся, что я смогу найти возраст/пол/место, а затем я мог бы создать карту/приборную панель какого-то рода, что было бы круто.

Но афайк это невозможно. Если я прошу сведений о пользователе, я получаю только самые основные данные:

{ 
    "id": "...", 
    "first_name": "...", 
    "last_name": "...", 
    "link": "https://www.facebook.com/app_scoped_user_id/.../", 
    "name": "...", 
    "updated_time": "2014-09-12T17:02:18+0000" 
} 

Я попытался получить больше полей, используя /#{user-id}?fields=gender,location но ничего больше не показывают. Логично, потому что мой токен не позволяет мне получить доступ к этому конкретному пользователю, только моему собственному пользователю (правда?).

Так что мой вопрос в целом: как я могу собрать статистику группы facebook?

Возможные решения я могу думать:

  • запроса токен от всех членов, так что я могу собрать их информацию? Это кажется совершенно непрактичным.
  • для каждого члена я могу посетить их facebook страницу общественного и скрести общественности информации

Но в общей сложности Facebook API нуб Я предполагаю, что там должен быть более эффективными способами? Кроме того, я фактически не интересуюсь личными данными, просто общая статистика группы, но из документации API я не нашел для нее никакой записи.

Или мне нужно создать APP, и все члены группы должны «установить этот APP», а затем вы можете установить этот APP в группу, которая добавит дополнительную страницу ??? (ОК: очевидно, также APP APOB).

Все благодарности, советы и замечания с благодарностью.

ответ

2

Текущий API Facebook, как вы заметили, предоставит вам дополнительную информацию, касающуюся вас. Чтобы получить расширенную информацию для других пользователей, эти пользователи должны войти в приложение, которое вы владеете и предоставляете доступ.

Возможно, вы ищете location, для которого требуется user_location разрешение https://developers.facebook.com/docs/facebook-login/permissions/v2.0#reference-user_location. Увидев, что вы будете использовать это для статистических целей, я не верю, что запрос на разрешение на Facebook будет рассмотрен.

Что касается ваших решений

  • запрос маркера от всех членов, так что я могу собрать их информацию? Это кажется совершенно непрактичным. Согласен и у вас нет одобрения для этого разрешения в любом случае
  • для каждого участника Я могу посетить их общедоступную страницу facebook и очистить общедоступную информацию. Вы нарушаете политику TOS и разработчиков здесь

Таким образом, нет никакого способа, в API, в рамках политики, чтобы определить статистику группы.

Ниже не рекомендуется, а только показывает, что это практично, но не хороший способ пойти об этом

Facebook Родные приложения (Facebook для IOS/Android, Facebook Messenger, Facebook Pages) имеют особый доступ к данных и, кроме того, все еще работает v1.0. Теоретически, можно использовать access_token, принадлежащий одному из этих приложений, а затем запросить данные /{group-id}/members?fields=id,gender,location - это один из способов сделать это.

Также все приложения v1.0 по-прежнему возвращают пол для любого пользователя.

+0

Это отличная обратная связь, спасибо! Я проверю API v1. – nathanvda

+0

Bummer, v1 API доступен только для приложений, созданных до апреля 2014 года, поэтому это означает, что для меня нет никакого способа :(Я догадался, подсчитываю количество членов и фильтры (поиск всех членов, которые являются мужчинами/женщинами/...), но API, похоже, тоже не допускает такой вещи. В некотором роде логично: я думаю, что Facebook хочет быть единственным, кто может монетизировать демографию своих пользователей, чтобы показывать правильные объявления и т. д. Спасибо! – nathanvda