Skip to main content

Demo library

Project description

Getting Started

A library to help create python pipelines for processing Tracer Data

Full Online Documentation

This is primarily for working with Social Media Organic and Paid Advertisement Data but also contains generic functions for writing to postgreSQL and snowflake databases, creating notifications in Slack Channels and writing to Google Sheets

Library Installation

pip install veetility

To upgrade the library after an update

pip install veetility --upgrade

Initialisation of the UtilityFunctions class

An instance of the "UtilityFunctions" class can be initiated with the ability to read/write with google sheets and also to read/write to tables in a postgreSQL database. However none of these are mandatory.

Google Sheets Authentication

In order to use the functions that read/write from google sheets then a dictionary needs to be passed to the "gspread_auth_dict" argument. This dictionary can be obtained from a google API credentials JSON file.

The instructions for creating this JSON file can be found from the gspread documentation

Then copy the JSON information in curly brackets as a python dictionary into the gspread.service_account_from_dict() authentication method. The "client_email" parameter in the JSON material is the email address of the google sheet client we have created. This email address must be given read or write access to any google sheet you want to interact with.

PostgreSQL connection parameters

The following correction parameters need to be passed in during initialisation of the class instance

  1. db_name e.g. "vayner_external_XXXXXXXXXXX"
  2. db_host e.g. "dashboard-vayner-XXXXXXXXXXXXXXXXXXXX.rds.amazonaws.com"
  3. db_port e.g. "5432" (this is the default for postgreSQL)
  4. db_user e.g. "tom.jones"
  5. db_password e.g. "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

Setup in code

It is advisable to put the parameters into a config.py file (cf) which can then be imported into the main script

import config as cf
from veetility import utility_functions

util = utility_functions.UtilityFunctions(cf.google_sheet_auth_dict,cf.db_user, 
                                          cf.db_password,cf.db_host,
                                          cf.db_port, cf.db_name)

Usage in code

Once an instance of the class UtilityFunctions has been created, e.g. "util" then functions (methods) of the class can be used e.g. "write_to_gsheet()".

This can write a pandas.DataFrame to any google sheet the "client_email" has been given "editor" access to. First pass in the name of the Google Sheet workbook, then the tab of the workbook, then the pandas.DataFrame

util.write_to_gsheet("Indeed Data Error Tracking","PaidNoBoostedMatch", 
                        paid_no_boosted_match)

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

veetility-0.5.3.tar.gz (69.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

veetility-0.5.3-py3-none-any.whl (74.4 kB view details)

Uploaded Python 3

File details

Details for the file veetility-0.5.3.tar.gz.

File metadata

  • Download URL: veetility-0.5.3.tar.gz
  • Upload date:
  • Size: 69.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.17

File hashes

Hashes for veetility-0.5.3.tar.gz
Algorithm Hash digest
SHA256 0038f79ff82014ff5ff922fa3657e9a0e7ac7abc2f8a053f03f374b3bfe9a9d3
MD5 2d949925b9d8832ec20a42d962412b22
BLAKE2b-256 f449c48883d1bdc63eeb9a8fc23e81c52091fec1a0ac4b4d564748b02a3fdaea

See more details on using hashes here.

File details

Details for the file veetility-0.5.3-py3-none-any.whl.

File metadata

  • Download URL: veetility-0.5.3-py3-none-any.whl
  • Upload date:
  • Size: 74.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.17

File hashes

Hashes for veetility-0.5.3-py3-none-any.whl
Algorithm Hash digest
SHA256 93bffe007b0f66da47d05213c777ad0d699016e42640f9c493cb5f38c8234be1
MD5 64dc3d5e8c217b21b5e1e093b6dd7484
BLAKE2b-256 f53bd0280814abe4f0987802f27c25c0948a7a3bee7c4930108feda8a13c921f

See more details on using hashes here.

Supported by

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