- PVSM.RU - https://www.pvsm.ru -

PyGA: использование трекинга Google Analytics в бекенде, написанном на Python

Для недавно сделанного мной в рамках изучения Flask микросервиса shares.datagreed.ru [1] мне захотелось отслеживать переходы по разным адресам API. Как это сделать, если Google Analytics интегрируется в страницу посредством JS?

Вот и я тоже не знал. Поиск привел меня к официальной библиотеке на PHP для мобильных сайтов, на которых не предполагалось (когда-то) использовать JavaScript.

Дальнейшие мои изыскания вылились в небольшой модуль [2] для питона, который позволяет использовать трекинг страниц (ивенты, увы, не поддерживаются) Google Analytics со стороны сервера. Штатно в библиотеку влючены классы для Django и Flask. Класс для Flask в данный момент развернут и обкатывается у меня на shares.datagreed.ru [1], а класс для Django я пока что не тестировал, так что багрепорты приветствуются.


В Django используется вот так (во views.py):

from pyga import DjangoGATracker

def some_view(request):

    ga = DjangoGATracker('UA-xxxx') #ваш ключ для GA
    ga.track(request) #записываем посещение текущей страницы

    #<...>

Для Flask потребуется передать еще объект сессии:

from flask import request, session #должен быть задан secret_key в параметрах приложения flask, см. документацию по flask

from pyga import FlaskGATracker

#<...>

ga = FlaskGATracker('UA-xxxx') #ключ GA
ga.track(request, session)  #регистрируем посещение страницы

Если нужно, то можно использовать все это на чуть более низком уровне:

from pyga import GATracker

ga = GATracker('UA-xxxx')
ga.track('/api/news/', user_session_id, ip_address, useragent)

Проект живет на битбакете [2]. Документация там черновая, если кому-то будет интересно, то могу ее дописать.

Установка с помощью pip:

pip install -e git+https://bitbucket.org/DataGreed/pyga.git#egg=pyga-dev

Автор: loststylus

Источник [3]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/python/19289

Ссылки в тексте:

[1] shares.datagreed.ru: http://shares.datagreed.ru

[2] небольшой модуль: https://bitbucket.org/DataGreed/pyga

[3] Источник: http://habrahabr.ru/post/157621/