Skip to main content

Simple wrapper functions for connecting to and loading data

Project description

Connectivator

Set of wrapper functions to abstract repetitive tasks such as reading data from a Redshift/postgres databases, and writing their contents to a CSV or Google sheet. The lack of flexibility is done on purpose to simplify and standardize importing/exporting procedures. For more flexibility, simply use the original packages these wrapper functions were built upon, i.e. pandas, gspread, etc.

Current State

  • Connect to Postgres / Redshift: postgres.get_engine
  • Read output of a sql query into a data frame: transfer.read_sql_data
  • Write output of SQL files to CSV: transfer.sqls_to_csv
  • Read contents of a Google sheet into a data frame: gsheets.get_ws_data
  • Update contents of a Google sheet using a data frame: gsheets.update_ws
  • Write output of SQL files to Google sheet: transfer.sqls_to_gs

Environment Variables

  • Add a .env file to the project root directory.
  • Add the following environment variables, replacing with values relevant for your connections. Format:

Postgres/Redshift Environment Variables

export PGHOST = instance-name.abc123.us-east-1.redshift.amazonaws.com
export PGPORT = 5439
export PGUSER = your_user_name
export PGPASSWORD = your_password
  • Load the environment variables before running the script. For example, by running source .env in the terminal you are using to run Python scripts.

Google Sheets Credient File and Environment Variable

Requires a json credentials file, which can be downloaded when creating a service account within a Google developer console project. The Google Sheets API enabled also must be enabled. See: https://developers.google.com/sheets/api/quickstart/python

Also, the google sheet to be modified needs to give access to the Service Account. To do so, find the email associated to the service account under Credentials >> Manage Service Accounts of the Google Console project. Then go to the google sheet to be modified and allow edit access to this email.

export GOOGLE_APPLICATION_CREDENTIALS="filepath/to.json"

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

connectivator-0.0.7.tar.gz (3.6 kB view details)

Uploaded Source

Built Distribution

connectivator-0.0.7-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file connectivator-0.0.7.tar.gz.

File metadata

  • Download URL: connectivator-0.0.7.tar.gz
  • Upload date:
  • Size: 3.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.1

File hashes

Hashes for connectivator-0.0.7.tar.gz
Algorithm Hash digest
SHA256 cff655132e877d87147e2d5de189fd54f0cd58f7bcb9d919f1c17bef10526c5d
MD5 154334005143a2e2daeeb108ce2776c8
BLAKE2b-256 5e0e67bd42d2c3ba40d73a3b32ade53b0a0a70e41cdf89dd69e59e3ba58aa3b0

See more details on using hashes here.

File details

Details for the file connectivator-0.0.7-py3-none-any.whl.

File metadata

  • Download URL: connectivator-0.0.7-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.1

File hashes

Hashes for connectivator-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 4e4172c2e21eaed45abb275b549637755fc4743148bf62a7413bb8a7f000a91b
MD5 8b977b7e3870894cf8e011ff3369f9f9
BLAKE2b-256 5b4e6e84655e1c0c727943c5481a274fd4d73260989e1e16b5dc3459b80c9ae6

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