@tvsjke
информация засекречена

Как получить google plus shares count?

П р и в е т.

Собственно, проблема в заголовке. Метод, использовавшийся раньше, теперь (почему-то) не работает:

$endpoint = 'https://plusone.google.com/u/0/_/+1/fastbutton?count=true&url=' . $url;
  $session = curl_init($endpoint);
  curl_setopt($session, CURLOPT_RETURNTRANSFER, TRUE);
  $result = curl_exec($session);
  curl_close($session);
  $tmp = [];
  preg_match('#<div id="aggregateCount" class="Oy">(.+?)</div>#is', $result, $tmp);

  return $tmp[1];


Гугление выдает только комбинации с вышеуказанным url, которые не работают

С п а с и б о
  • Вопрос задан
  • 137 просмотров
Решения вопроса 1
@tvsjke Автор вопроса
информация засекречена
Нашел. Может, кому пригодится:

$url = 'url';

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://clients6.google.com/rpc?key=AIzaSyCKSbrvQasunBoV16zDH9R33D88CeLr9gQ');
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, '[{"method":"pos.plusones.get","id":"p","params":{"nolog":true,"id":"' . $url . '","source":"widget","userId":"@viewer","groupId":"@self"},"jsonrpc":"2.0","key":"p","apiVersion":"v1"}]');
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-type: application/json'));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);

$curl_result = curl_exec($curl);
curl_close($curl);

$json = json_decode($curl_result, true);
$shares = $json[0]['result']['metadata']['globalCounts']['count'];
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы