Русские документы
Ежедневные компьютерные новости RSS rusdoc.ru  Найти :
http://www.rusdoc.ru. Версия для печати.

Статистика Google Analytics на вашем сайте

Раздел: Система @ 13.10.2008 | Ключевые слова: google analytics сайт статистика сайта

Источник: habrahabr

Помню, как-то проскакивала пара записей (здесь и здесь) по поводу импортирования данных из Google Analytics для отображения сводных диаграмм на сайте, в общем, как на хабре. Прочитав вышеупомянутые топики и не обратив особого внимания тогда, я о них успешно «забыл» и пошел себе дальше. И вот сейчас, появилась необходимость реализовать нечто подобное на одном из своих проектов.

image

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

UPDATE:
Добавил еще одну версию, подробности и линк под катом.


Скачать можно отсюда.

Новую версию забирать здесь.
В config.php добавлена переменная $id, которая соответствует id в Google Analytics. Данный id используется в URL каждого из отчетов.
Т. е., можно либо в конфиге указать свой id в этой версии, либо подкорректировать переменные $url в предыдущей, указав в строке запроса необходимый id.
Спасибо Orenlab за замечание.

UPDATE 2:

Следующая версия здесь.
В ga.php из запроса убран www.askapache.com
Без этой переменной все работает так же нормально. Зачем оно было надо — остается догадываться. Просмотрел гугловые заголовки — ничего подобного не увидел.
Спасибо AlexSpaizNet за замечание.

Список всех версий — здесь

Вкратце опишу главные нюансы, настройку и принцип работы.

Итак, наверно всем известно, что есть возможность получить из GA отчет в одном из форматов (PDF, XML, CSV и что-то еще). Таким образом, это самый простой способ экспорта данных. Однако, скачать отчет возможно лишь только после авторизации, и никаких внешних ссылок для скачивания отчета без авторизации недоступно. Правда, есть возможность отправки отчета на мыло (читал, что некоторые таким образом экспортили данные, т. е. отчет отправлялся в мыло, потом по крону запускался скрипт, который забирал почту, и парсил полученный отчет, но, имхо, это бред). В общем, для получения нам необходимо сэмулировать логин в систему и получить после этого данные. Для этого используем скрипт ga.php (который, кстати, писан не мною, а найден несколько месяцев назад в дебрях форума серча, за что спасибо разработчику, т. к. это сэкономило время на разбор гугловой аутентификации).
Для реализации задачи нам бы подошли форматы либо XML, либо CSV. Уж не знаю, что меня в тот момент дернуло, но я остановился на последнем, т. е. это обычный текстовый файл, который нам необходимо определенным образом пропарсить для импорта данных и построения графиков.

Парсит полученные данные у нас скрипт stat.php (он и является основным запускаемым скриптом, который подгружает в себя ga.php и, короче говоря, генерирует резалтные файлы на диске для создания диаграмм)
Я попытался максимально прокомментировать код, чтобы было понятно, что куда и зачем, и можно было без особых сложностей добавить нужный отчет. Я же взял, на свое усмотрение, нужные мне 6 отчетов: Посещаемость с начала существования ресурса (дата указывается в настройках), Посещаемость за последние три месяца, Источники переходов, География посетителей, используемые браузеры и ОС за последние 30 дней.

Все настройки указываются в config.php

Кстати, на сайте, для которого мне необходимо было сделать отображение статистики, код google analytics был установлен только несколько месяцев назад, но хотелось показать рост посещаемости с самого начала существования, т. е. за два с лишним года в данном случае. Поэтому была добавлена возможность «приклеить» к данным, полученным из GA, информацию о посещаемости за время предшествующее установке гуглового счетчика. по умолчанию — это статичный файл default.csv, сформированным необходимым образом (в архиве есть пример всех csv-файлов, включая этот). Откуда брать для него данные — решать вам, в моем случае на сайте было установлено аж 4 счетчика вроде рамблера, мейлру и т. п. (чьи показания, кстати, разнятся ооочень существенно). Если надобности использования подобной схемы нет, просто укажите имя переменной, указывающей имя данного файла как false.

Для отображения диаграмм заюзаны amCharts. Это платный продукт, стоимостью 85 евро за односайтовую лицензию. Однако, доступна и бесплатная версия, которая отличается лишь тем, что на диаграммах выводится ненавязчивая ссылка на сайт разработчика.
Настройки каждой из диаграмм указываются в соответствующих xml-файлах, которые хорошо прокомментированы, и я думаю, разобраться, что там к чему не составит большого труда. Я же для представления взял цветовую гамму, аналогичную графикам на хабре.
Данные для построения диаграмм подгружаются из сгенерированных нами выше csv файлов, специально подготовленных для использования в amCharts.

В конечном итоге мы получаем примерно следующее.

Теперь можно загнать скрипт в крон, и несколько раз в сутки обновлять статистику, например так:

0 */8 * * * /usr/local/bin/php /home/username/public_html/stats/stat.php


Вернуться в раздел: Система
© Copyright 1998-2012 Александр Томов. All rights reserved.