Подтвердить что ты не робот

Список людей, которые поделились на facebook

Я немного искал документы и не могу найти способ сделать это. Информация доступна публично (на странице facebook... ссылка говорит "Просмотреть все # акции" ), но я не могу найти способ получить доступ к этой информации через FQL или графический API.

Я знаю, что могу получить список понравившихся для данного сообщения:

https://graph.facebook.com/87236249496_134765166623967/likes

Цель состоит в том, чтобы получить список людей, которые поделились, но, похоже, для акций не похоже. Я что-то пропустил?

4b9b3361

Ответ 1

Перейдите к... http://www.facebook.com/ajax/shares/view/?target_fbid=10154612868272801&__a=1

10154612868272801 - это идентификатор истории Facebook, __a означает асинхронность.

Вы увидите большое количество текста /JSON, это в основном HTML и JS для небольшого всплывающего окна. Существует часть текста, например hovercard.php?id=#, где # - это идентификатор пользователя Facebook, с помощью preg_match_all вы получаете все идентификатор пользователя, который поделился этим сообщением.

Например: 100000541151971 (Eric) и 9204448 (Кортни)...

К сожалению, вы должны войти в Facebook, чтобы сделать первый шаг, выяснить это:)

Ответ 2

Вы можете сделать это через соединение "graph.facebook.com/OBJECT_ID/sharedposts":

enter image description here

Я выясню это соединение с помощью параметра metadata = 1:

enter image description here

Ответ 3

Я думаю, вы можете получить share_count из таблицы потоков по запросу FQL, как

SELECT type, source_id, share_count, permalink, description, post_id, actor_id, target_id, message , share_count 
FROM stream
WHERE filter_key = 'others' and post_id = '87236249496_134765166623967'

вы можете проверить его https://developers.facebook.com/tools/explorer/

Примечание: вы должны принять разрешения read_stream, как описано здесь

Ответ 4

Запишите эту ссылку: https://graph.facebook.com/134765166623967/sharedposts (с допустимым доступом_открытием)

Идентификатор в ссылке - это идентификатор стены (87236249496_134765166623967) минус идентификатор страницы (87236249496) и минус подчеркивание.

Вам также потребуется разрешение read_stream

Ответ 5

Я знаю, что вы хотите получить акции через post_id, но можете ли вы рассчитывать на поиск акций по page_id вместо post_id?

Если вы можете, то вы можете использовать следующий FQL для получения данных, которые вы ищете.

SELECT via_id, created_time, owner_comment
FROM link
WHERE owner = me()

Затем вы можете сравнить via_id с автором сообщений (идентификатор страницы), чтобы определить, получен ли этот ресурс от автора сообщения.

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