This open source library allows you to A/B Test your Website at server-side.
- Works with Python: 2.7 onwards. Python 3 is also supported.
It's recommended you use virtualenv to create isolated Python environments.
pip install vwo-python-sdk
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)
Refer Official VWO Documentation
python setup.py develop
python setup.py test
Refer third-party-attributions.txt
- Main Contributor - Shravan Chaudhary
- Repo health maintainer - Varun Malhotra(@s0ftvar)
Refer CHANGELOG.md
Please go through our contributing guidelines
Copyright 2019-2022 Wingify Software Pvt. Ltd.