Skip to main content

KAMI Python Lib to deal with gsuite issues google_drive, google_sheets, etc.

Project description

Project logo

Kami Google Drive

Status GitHub release issues - kami-logging pulls - kami-logging License


Simple functions to create folder and upload files using google drive api

📝 Table of Contents

🧐 About

This package arose from the need to simplify the google drive management tasks of applications created by the Kami CO software development team.

Currently the package has 6 functions: get_service, connect, get_folder_id, create_folder, upload_file, upload_files

🏁 Getting Started

These instructions will get you a copy of the package and a daily use example.

Prerequisites

  • python >= 3.9
  • kami-logging >= 0.2.0
  • google-api-core >= 2.11.0
  • google-api-python-client >= 2.50.0
  • google-auth-httplib2 >= 0.1.0
  • google-auth-oauthlib >= 0.5.2
  • google-auth >= 2.7.0
  • googleapis-common-protos >= 1.56.2

Installing

$pip install kami-gdrive

🎈 Usage

To get work with this package first you need to create an project and an agent and get json file with correspondent credentials jus the way of google drive api documentation find here

The 6 functions available are:

  • get_service():

Get a service that communicates to a Google API.

Args:

  • api_name : The name of the api to connect to.
  • api_version : The api version to connect to.
  • scopes : A list auth scopes to authorize for the application.
  • key_file_location : The path to a valid service account JSON key file.

Returns: A service that is connected to the specified API.

  • connect(service_account_credentials):

Connect with google drive api service.

Args:

  • service_account_credentials : The path to a valid service account JSON key file.

Returns: A google drive api service.

  • get_folder_id(parent_folder_id, folder_name):

Get id of a folder in driver if its exists.

Args:

  • parent_folder_id : Id to root or parent folder when search will begin.
  • folder_name : Searched folder name

Returns: Id to folder or None

  • create_folder(parent_folder_id, folder_name):

  • Create New Folder in especified parent folder.

Args:

  • parent_folder_id : Id to root or parent folder when new folder will be created.
  • folder_name : Name for the new folder

Returns: Id to new folder or None

  • upload_file(folder_id, this_file):

  • Upload an local file to especified folder on google drive.

Args:

  • folder_id : Id to the folder when this file will be uploaded.
  • this_file : Absolute or Relative full path to the local file.

Returns: Show an log with the result of process

  • upload_files(folder_id, files_list):

  • Upload an list of local file to especified folder on google drive.

Args:

  • folder_id : Id to the folder when this file will be uploaded.
  • files_list : List of Absolute or Relative full path to the each local file.

Returns: Show an log with the result of process

example:

from kami_gdrive import create_folder, get_folder_id, upload_file
root_folder_id = '1eAnlW53WAOJn-eaLdM2AqRYnl0ui9qrL'
my_new_folder_id = create_folder(root_folder_id, 'my_new_folder')
local_file = 'Path/To/My/file.ext'
upload_file(my_new_folder_id, local_file)

Result:

Project logo

⛏️ Built Using

✍️ Authors

See also the list of contributors who participated in this project.

🎉 Acknowledgements

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

kami_gsuite-0.1.0.tar.gz (22.2 kB view details)

Uploaded Source

Built Distribution

kami_gsuite-0.1.0-py3-none-any.whl (22.0 kB view details)

Uploaded Python 3

File details

Details for the file kami_gsuite-0.1.0.tar.gz.

File metadata

  • Download URL: kami_gsuite-0.1.0.tar.gz
  • Upload date:
  • Size: 22.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.2 Linux/6.1.0-12-amd64

File hashes

Hashes for kami_gsuite-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d6999f0ef65b0116e0669e019bef3b7c63d059f5272dc8d7e07fb3b15024856e
MD5 dc96bd645faa26894b68ebf299525bee
BLAKE2b-256 87322dc1c59126321219166a20bd39097f533b2138b4189cd451264d646d8827

See more details on using hashes here.

File details

Details for the file kami_gsuite-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: kami_gsuite-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 22.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.2 Linux/6.1.0-12-amd64

File hashes

Hashes for kami_gsuite-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 32cfae17b9197f598674d441f5473f6113be5b750c870bc9de16ef7ccbdc1876
MD5 59b54a4b0d626f9623c82f469facfa21
BLAKE2b-256 94cda2a30f09a19f35e411cf54db2427e97542d05c0732fd35239a404b3f1f99

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