Предел параметра api "limit" в графике Facebook - программирование
Подтвердить что ты не робот

Предел параметра api "limit" в графике Facebook

Я получаю большое количество комментариев с общедоступной страницы, используя API-интерфейс Facebook Graph.
По умолчанию facebook возвращает 25 комментариев за ответ и использует пейджинг. Это вызывает необходимость в нескольких запросах, что является uneccesery, как я знаю, впереди будет много комментариев.

Я читал о параметре "limit", который вы можете передать, чтобы запросить определенное количество элементов для каждого ответа.

Мне было интересно, каков предел этого параметра? Я предполагаю, что не могу пройти & limit = 10000.

4b9b3361

Ответ 1

Существует другой способ получения комментариев:

https://graph.facebook.com/<PAGE_ID>_<POST_ID>/comments?limit=500

Максимальное значение для предельного параметра - 500.

Ответ 2

да, с параметром limit вы можете передать количество нужного вам ресурса в одном вызове. предел по умолчанию - 25.

для ex. если вам нужно 100 комментариев за один вызов для сообщения с идентификатором POST_ID, вы можете запросить следующее:

https://graph.facebook.com/POST_ID?fields=comments.limit(100) 

Ответ 3

Я бы порекомендовал вам вместо этого использовать FQL.

FQL обеспечивает более гибкий подход, при котором вы можете комбинировать типы данных (сообщения, пользователи, страницы и т.д.), как вам будет угодно. Вы также можете запрашивать комментарии, относящиеся к списку историй, а не только к одному, ограничивающему количество запросов.

Есть несколько недостатков:
1. Существует ограничение на 5000 комментариев. Здесь вы будете использовать запрос, выглядящий примерно так:" SELECT id,...... FROM comments,... WHERE parent_id в (1,2,3....) ORDER BY time LIMIT 0, 5000 ". Даже если вы разделите это на несколько запросов с помощью" LIMIT 0, 1000 "," LIMIT 1000, 1000 ", LIMIT 2000, 1000 и т.д., Вы никогда не получите ничего более 5000 комментариев (" LIMIT 5000, 1000" вернется пусто).
2. Все реальные запросы, сделанные на сервере Facebooks, считаются одним запросом. Вы можете отправить что-то, что на самом деле представляет собой комбинацию запросов, это будет считаться несколькими запросами.
3. Facebook не любит тяжелых запросов. Вы можете получить блокировку на более короткие периоды времени (минуты → часы, а не дни). Если это произойдет, действуйте на нем.

Ответ 4

Я думаю, они изменили это. Для/подачи? Я получаю только 200-225 сообщений, но для комментариев я получаю целых 2000 back