Как получить Facebook share, например, количество комментариев для url-адреса только с помощью graph api (не устаревшим способом)
Проблема в том, что после v2.1 graph api fql будет устаревшим.
Может кто-нибудь сказать мне, как получить отдельные лайки, количество акций для данного url, используя только graph api? Я искал какую-то документацию, но ее нет, я могу получить только общие "акции", которые являются лайками + акциями + комментариями.
Да, я знаю, что есть Бессмертный http://api.facebook.com/restserver.php?method=links.getStats&urls , но что, если facebook наконец закроет его?
6 ответов:
REST API (с вызовами типа
Таким образом, из моего понимания, это приведет к неработоспособности этой функции через два года после введения v2. 1 7 августа 2016:http://api.facebook.com/restserver.php?method=links.getStats&urls
) был объявлен устаревшим с введением Graph API v2. 1: https://developers.facebook.com/docs/apps/changelog#v2_1_deprecations но и уже в 2011 году: https://developers.facebook.com/blog/post/616/Https://developers.facebook.com/docs/apps/versions#howlong
Самое близкое, что вы можете получить к "старому" остатку результатов вызова API FQL с помощью Graph API, это afaik:
Https://developers.facebook.com/docs/graph-api/reference/v2.3/url/
Но он опускает метрикуlike_count
(Не спрашивайте меня, почему...).Мое личное мнение заключается в том, что вы должны продолжать использовать вызовы FQL для
link_stat
(https://developers.facebook.com/docs/reference/fql/link_stat / ) таблица, поскольку она будет доступна почти в течение следующих 2 лет. Это возможно только в том случае, если у вас есть приложение v2.0. Может быть, до тех пор будут какие-то дополнительные конечные точки для API Graph.
Я предлагаю использовать такой инструмент, как SharedCount, он также предлагает намного больше платформ. Вот как они получают данные: http://www.sharedcount.com/documentation.php (прокрутите вниз до "Sources")
Итак, для Facebook это будет выглядеть так:
https://api.facebook.com/method/links.getStats?urls=%%URL%%&format=json
Вы получаете объект JSON, подобный этому:
..."share_count": 66,"like_count": 15,"comment_count": 1,"total_count": 82...
Edit: сейчас это не рекомендуется, но есть еще одна возможность, объясненная в эта тема: получить FB лайки, акции и комментарии для URL с помощью PHP-без ограничений
Вы можете использовать API facebook graph, как
https://graph.facebook.com/?ids=http://mycodingtricks.com
, и он вернет код json, как{ "http://mycodingtricks.com":{ "id":"http://mycodingtricks.com", "shares":1 } }
Я разработал свой собственный php-скрипт, на котором вы можете рассчитывать все социальные сети, используя этот api.
http://mycodingtricks.com/share/social.php?url=YOUR-URL-HERE
и он вернет такие данные, как:{ "facebook":[ { "share_count":1, "like_count":0, "comment_count":0, "total_count":1, "click_count":0, "comments_fbid":567687199998199, "commentsbox_count":0 } ], "googleplus":10, "twitter":3, "buffer":0, "pinterest":0, "stumblupon":1, "reddit":"<html><body><h1>403 Forbidden<\/h1>\nRequest forbidden by administrative rules.\n<\/body><\/html>\n", "linkedin":0 }
Но если вы хотите использовать самостоятельно, вот Полная статья о том,как считать долю facebook, нравится и все. http://mycodingtricks.com/php/2-ways-to-count-facebook-likes-shares-and-comments-using-php/
На самом деле правильный способ получить подобное число таков:
http://graph.facebook.com/v2.5/?id=YOUR_URL&fields=og_object{engagement}
Скобки после og_object - это второй уровень og_object. смотрите документацию здесь:
https://developers.facebook.com/docs/graph-api/reference/urlВозможно, вам потребуется закодировать url-адрес и скобки, чтобы он выглядел примерно так: https://graph.facebook.com/v2.5/?id=ENCODED_URL&fields=og_object%7Bengagement%7D&id=http%3A%2F%2Fwww.cnn.com
См. рабочий пример в обозреватель графиков (Нажмите кнопку Отправить)
Все ответы неверны или неполны с момента последнего закрытия API 2.1!
Я являюсь автором плагина для социальных сетей MashShare, и мне недавно пришлось сделать точные наблюдения за этой проблемой, поскольку она серьезно повлияла на количество акций нашего плагина.
Проверенные данные по наблюдениям:
Https://graph.facebook.com/v2.7/?id=https://www.mashshare.net содержит акции и лайки.
Насколько я выяснил, единственный способ получить число, близкое к реальному общее количество записей в посте - это получить сначала такие, как url. Затем возьмите это число и вычтите его из общего количества акций и лайков.
Чтобы получить like count, вам нужно взять идентификатор объекта url и создать другой запрос API: https://graph.facebook.com/v2.7/14206851986099/likes?summary=true
Если вы знаете, как объединить оба запроса в один, пожалуйста, дайте мне знать.