Google Analytics for Python and the command-line

Build Status

google-analytics takes the pain out of working with the Google Analytics reporting APIs. It supports both the Core and the Real Time API. It is written in Python but there's also a full-featured command-line interface.

This package is built on top of Google's own API client for Python.

Quickstart

First, install the package using pip

Then, create a new project in the Google Developers Console, enable the Analytics API under "APIs & auth > APIs" and generate credentials for an installed application under "APIs & auth > Credentials". Keep this page open. For more detail, look at the wiki page on authentication.

After that, executing your first query is as easy as

import googleanalytics as ga
accounts = ga.authenticate()
profile = accounts[0].webproperties[0].profile
pageviews = profile.core.query.metrics('pageviews').range('yesterday').value
print(pageviews)

Or on the command-line, that'd be:

googleanalytics --identity <identity> --account <account> --webproperty <webproperty> \
    query pageviews --start yesterday

The account, webproperty and profile determine what data you'll be querying. Learn more about profiles and querying on the Querying wiki page, or alternatively look at the Common Queries page for lots of examples. Read more about how to work with the resulting data in Working With Reports. On The Command-Line has more details about the command-line application.

The example above will authorize the app and authenticate you interactively. It is also possible to pass credentials as arguments in Python, using environment variables or from your operating system's keychain. Authentication is treated in much more depth on the authentication wiki page.