INT 21h

Домашняя страница самого страшного прерывания

Получение статистики из Яндекс.Метрики

№ 3845 В разделах: Администрирование Программирование от November 9th, 2011,

Я сделал ежедневный cron, который мне отправляет по почте в конце дня статистику по расходу средств на моем аккаунте у Селектела. Очевидно, этого мало для целого ежедневного письма и я решил добавить туда сбор статистики Яндекс.Метрики за день. Первым делом нужно зарегистрировать ваше приложение и получить ключ. Для начала, можно получить отладочный ключ, вместо полноценного, т.к. для полноценного придется подождать премодерации.

Теперь нужно получить ваш токен:

$yandex_get_token_url="https://oauth.yandex.ru/token";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $yandex_get_token_url);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS,
     'grant_type=password&username=MYUSERNAME&password=MYPASSWORD&
     client_id=CLIENT_ID&client_secret=CLIENT_SECRET');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$token = curl_exec ($ch);
curl_close ($ch);

Замените имя пользователя, пароль, id клиента и пароль клиента на ваши собственные. Ответ от сервера будет получен в формате JSON. Его очень легко раскодировать в богоугодный вид:

$token_o = json_decode($token);
$token = $token_o->access_token;

Теперь этот токен можно использовать для получения вашей статистики!

$today=date("Ymd");
$metrika_url = "http://api-metrika.yandex.ru/stat/traffic/summary.json?id=COUNTERID&
    pretty=1&date1=$today&date2=$today&oauth_token=$token";

Замените COUNTERID на id вашего счетчика. Далее все просто получаем JSON по сгенерированному URL и декодируем его в обычный объект.

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $metrika_url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$metrika = curl_exec ($ch);
curl_close ($ch);

$metrika_o = json_decode($metrika);
echo "Статистика посещений сайта blindage.org:\n\n";
echo "\tПосетителей: ".$metrika_o->totals->visits."\n";
echo "\tИз них новых: ".$metrika_o->totals->new_visitors."\n";
echo "\tПросмотров: ".$metrika_o->totals->page_views."\n";

Ответ от скрипта легко заворачивается в email сообщение и отправляется вам на почту:

php5 selectel.php | mail -s "Отчет о работе сервера за `date +%d-%m-%Y`" "21h@blindage.org"

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

Всего 1 комментарий »

1 комментарий »

Comment by Rei-chan | December 1, 2011 @ 00:21:57

Правда прикольная штука, надо будет такое сотворить.

Форма отправки комментария

CAPTCHA
*

Разрешенные HTML-теги:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

RSS RSS Feed только для этого поста |


Комментарии
  • Игорь: Все настроил, еще раз просмотрел видео и методом научного тыка все настроил и сохранил, все работает и обе...
  • 21h: Здравствуйте, Игорь! Я не знаю :) Думаю аналогично согласно инструкции к вашей радиостанции.
  • Игорь: Добрый день, просмотрел Ваше видео все доступно и ясно для 8 ми канальных радеек, но мне нада настроить 69...
  • Гоги: Есть инструкция к Моторолкам – она подходит к серии Motorola TLKR T4… Т8. В конце сетка частот и...
  • 21h: торчок давно уже не обновлял, как только закрыл сайт где он работал. да, это морда для opentracker. без...
  • Buter: Какова дальнейшая жизнь торчка? Он кстати веб-интерфейсом для OpenTracker выступает? Без OpenTracker работать...
  • 21h: понятия не имею. гуглите инструкцию к вашей радейке и сверяйтесь с ней.
  • Денис: хочу их подружить с uv5r
  • Денис: t-388 walkie talkie на эти шпаргалочек нет,или как приминить ваши к их настройке?
  • John: Стекла для электроник – техночас.ру