Skip to main content

A Python wrapper for the AddThis Analytics API

Project description

Latest Version https://travis-ci.org/creafz/python-addthis.svg?branch=master https://coveralls.io/repos/creafz/python-addthis/badge.png?branch=master

A Python wrapper for the AddThis Analytics API.

Requirements

Installation

Install from PyPI:

pip install addthis

Usage

from addthis import Addthis

# create an AddThis instance using userid and password from your AddThis account and optionally provide a pubid
addthis = Addthis(userid="YOUR_USER_ID", password="YOUR_PASSWORD", pubid="YOUR_PUB_ID")

# get the number of shares for the last day
print addthis.shares.day()

# get the number of shares by day for the last week
print addthis.shares.day(period="week")

You can see a full description of all supported metrics and dimensions at http://support.addthis.com/customer/portal/articles/381264-addthis-analytics-api

A few more examples

How many times was my content shared on Twitter, by day, over the last week?

>>> addthis.shares.day(period="week", service="twitter")

What were my top shared urls for the pubid=”MY_PUB_ID”?

>>> addthis.shares.url(pubid="MY_PUB_ID")

How many users shared my content this month, broken down by their interests?

>>> addthis.sharers.interest(period="month")

Which sharing services sent the most clicks back to my site this week?

>>> addthis.clicks.service(period="week")

Exceptions

AddthisValidationError

Addthis object expects to be called with 2 parameters - “metric” and “dimension”:

addthis.<metric>.<dimension>()

For example:

>>> addthis.shares.day() # "shares" is a metric and "day" is a dimension

If it gets another number of parameters (e.g. addthis.shares() or addthis.shares.day.week()) it will raise an AddthisValidationError.

from addthis import Addthis, AddthisValidationError

addthis = Addthis(userid="YOUR_USER_ID", password="YOUR_PASSWORD", pubid="YOUR_PUB_ID")

try:
    addthis.shares()
except AddthisValidationError as e:
    print e # "Incorrect number of parameters are given. Expected 2 but got 1."

AddthisError

AddthisError is raised when AddThis service returns a response with a HTTP status code other than 200. The exception object has 4 attributes:

  • status_code: Code from the HTTP response.

  • code, message, attachment: Error attributes from the AddThis response body. (see the “Error” section in the AddThis Analytics API documentation for more information).

from addthis import Addthis, AddthisError

addthis = Addthis(userid="INCORRECT_USER_ID", password="INCORRECT_PASSWORD", pubid="INCORRECT_PUB_ID")

try:
    addthis.shares.day()
except AddthisError as e:
    print e # "401 Error (code = '80', message='authentication failed', attachment='{u'nonce': None, u'realm': u'AddThis', u'opaque': None})'."
    print e.status_code # 401
    print e.code # 80
    print e.message # "authentication failed"
    print e.attachment # {u'nonce': None, u'realm': u'AddThis', u'opaque': None}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

addthis-0.1.2.tar.gz (6.4 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page