Извлечение публичных данных из Facebook легальным способом - PullRequest
0 голосов
/ 23 ноября 2018

Я хочу сделать приложение, которое должно собирать некоторые публичные данные из Facebook.В частности, мне нужно проверить реакцию и комментарии, сделанные к публичным публикациям.

Я заметил две вещи: во-первых, согласно https://www.facebook.com/apps/site_scraping_tos_terms.php, очистка не разрешена, если facebook не дает вам письменное разрешение.(из чего, как мне в любом случае запрашивать разрешение?) Во-вторых, насколько я вижу, график api не позволяет получать информацию о сообщениях, сделанных другим пользователем / страницей.Я не прав?

Как мне получить законную информацию, которая мне нужна, и возможно ли это вообще?

1 Ответ

0 голосов
/ 23 ноября 2018

Чтобы получать публичные публикации на странице, а также реакции и комментарии к этим публикациям, вашему приложению потребуется разрешение Доступ к общедоступному контенту .Если вы еще не создали приложение, вы можете узнать, как это сделать, по этой ссылке и как проверить ваше приложение на наличие разрешений в этой ссылке .

Получив разрешение, вы можете получить публичные сообщения со страницы , используя приведенный ниже запрос API:

https://graph.facebook.com/<PAGE_ID>/posts?access_token=<ACCESS_TOKEN>&fields=name

Получить идентификатор сообщения , для которого вам нужны подробности из ответа на вышеуказанный запрос

Тогда вы можете использовать запрос ниже, чтобы получить реакции и комментарии к посту на основе идентификатора поста

Получить общее количество реакций:

https://graph.facebook.com/<POST_ID>?fields=reactions.summary(true)&access_token=<ACCESS_TOKEN>

Получите общее количество реакций определенного типа (НЕТ, НРАВИТСЯ, ЛЮБОВЬ, ВАУ, ХАХА, САД, ЗЛО, СПАСИБО, ГОРДОСТЬ):

https://graph.facebook.com/<POST_ID>?fields=reactions.summary(true).type(<REACTION_TYPE>)&access_token=<ACCESS_TOKEN>

Получить комментарии:

https://graph.facebook.com/<POST_ID>?access_token=<ACCESS_TOKEN>&fields=comments.summary(true).limit(999).filter(stream).fields(id,message,created_time,parent)

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

...