A tiny package for cXense API


License
MIT
Install
pip install pyCx==0.0.12

Documentation

A Tiny package for cXense API

Make cXense API simple.

Requirements

Python 3.6 above  (did't test in other versions)

Installation

pip install pyCx

How to use

Step 1: create a Cx object with env.yaml by using CxConfig

import os
from pyCx import Cx, CxConfig

# using env.yaml
fp = os.path.abspath('env.yaml')
cx = Cx(CxConfig(fp))

# or just passing dict value
my_cx_config = {
    'site_id': YOUR_ID,
    'username': 'YOUR_USERNAME',
    'secret': 'YOUR_KEY',
    'apiserver': 'https://api.cxense.com',
}
cx = Cx(my_cx_config)

and here's env.yaml sample:

default:
  site_id: YOUR_ID
  username: YOUR_USERNAME
  secret: YOUR_KEY
  apiserver: https://api.cxense.com

Step 2: send a /traffic request by using CxQuery

import json
from pyCx import Cx, CxenseURL
from pyCx.helpers import date_range

cx = Cx(my_cx_config)

# get CxQuery object from Cx
query = cx.get_query()

# apply date range for what we want, here will get data from 11/01 to 11/30 (include).
dates = date_range('2018-11-01', '2018-12-01')

# remember do a reset() before a new request.
status, header, content = query.reset() \
    .uri(CxenseURL.TRAFFIC) \
    .add_filter({'type': 'and', 'filters': [{'group': "PREFIX-articleid", 'items': ['123405'], 'type': "keyword"}]}) \
    .add_fields(['events', 'uniqueUsers']) \
    .add_history_fields(['events', 'uniqueUsers']) \
    .add_dates(dates) \
    .send()

# print results
result = json.loads(content.decode('utf-8'))
print(result)

Docs

TODO

Contributors

kilfu0701

Lastest Version

0.0.11 (Lastest, 2018/12/13)

other releases

License

MIT