Skip to main content

Python SDK for VWO server-side A/B Testing

Project description

VWO Python SDK

PyPI version CI codecov License

This open source library allows you to A/B Test your Website at server-side.

Requirements

  • Works with Python: 2.7 onwards. Python 3 is also supported.

Installation

It's recommended you use virtualenv to create isolated Python environments.

pip install vwo-python-sdk

Basic usage

Importing and Instantiation

import vwo

settings_file = vwo.get_settings_file(account_id, sdk_key)
vwo_client_instance = vwo.launch(settings_file)

API usage

# activate API
variation_name = vwo_client_instance.activate(ab_campaign_key, user_id)

# get_variation_name API
variation_name = vwo_client_instance.get_variation_name(ab_campaign_key, user_id)

# track API
vwo_client_instance.track(ab_campaign_key, user_id, ab_campaign_goal_identifeir, revenue_value)

Log Level - pass log_level to SDK

import vwo
from vwo import LogLevels

settings_file = vwo.get_settings_file(account_id, sdk_key)
vwo_client_instance = vwo.launch(settings_file, log_level=LogLevels.DEBUG)

Custom Logger - implement your own logger method

import vwo

class CustomLogger:
   def log(self, level, message):
      print(level, message)
      # ...write to file or database or integrate with any third-party service

settings_file = vwo.get_settings_file(account_id, sdk_key)
vwo_client_instance = vwo.launch(settings_file, logger = CustomLogger())

User Storage Service

import vwo
from vwo import logger

class user_storage(UserStorage):
  def get(self, user_id, campaign_key):
    # ...code here for getting data
    # return data

  def set(self, user_storage_data):
    # ...code to persist data

us = user_storage()

settings_file = vwo.get_settings_file(account_id, sdk_key)
vwo_client_instance = vwo.launch(settings_file, user_storage = us)

Documentation

Refer Official VWO Documentation

Local development

python setup.py develop

Running Unit Tests

python setup.py test

Demo Python application

vwo-python-sdk-example

Third-party Resources and Credits

Refer third-party-attributions.txt

Authors

Changelog

Refer CHANGELOG.md

Contributing

Please go through our contributing guidelines

Code of Conduct

Code of Conduct

License

Apache License, Version 2.0

Copyright 2019-2021 Wingify Software Pvt. Ltd.

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

vwo-python-sdk-1.28.0.tar.gz (47.5 kB view details)

Uploaded Source

File details

Details for the file vwo-python-sdk-1.28.0.tar.gz.

File metadata

  • Download URL: vwo-python-sdk-1.28.0.tar.gz
  • Upload date:
  • Size: 47.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.8.2 requests/2.26.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/2.7.16

File hashes

Hashes for vwo-python-sdk-1.28.0.tar.gz
Algorithm Hash digest
SHA256 0d12ec8c5a4a927f57cf5c31f501d4c81c0e248ef049dd47df9d83e4eee8dfd4
MD5 7b9c5d375549b9753dc0d202a5147d7d
BLAKE2b-256 c0f4466e7ae8bd80d7acb3f687f5315abfd72299426ada11cf73c6e44bad54b9

See more details on using hashes here.

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