Skip to main content

A tool allowing you to copy, upload, and download GDrive folders.

Project description

hiatus

This tool is currently not in active development, but will return faster and better than ever in the future. If any bugs come up, or simple feature requests, I will add them. Other than that, all development will be in a written version, entirely using asynchronous code.

gdrove

An RClone-like Google Drive tool to help you sync files to and from your personal computer and between Google Drive folders!

install

windows

pip install gdrove

linux

pip3 install gdrove

paths

Paths can be of five types: local (ld), my drive (md), shared drive (sd), file id (fi), and alias.

format

Paths are formatted as path_type:dir1/dir2/dir3, where path_type is the type of path (see below) and dir1/dir2/dir3 is the path to the file from wherever you want.

local (ld)

Local, specified as ld:path/to/some/folder, represent a local directory to download to or upload from.

my drive (md)

My Drive, specified as md:path/to/some/folder, is similar to RClone's method of paths, where the path is revative to your my drive folder.

shared drive (sd)

Shared Drive, specified as sd:drive_name/some/directory, where drive_name is the name of a Shared Drive, reference a file in a Shared Drive, whose name you specify as the first directory.

file id (fi)

File Id, specified as fi:S0M3_F1L3_1D, where S0M3_F1L3_1D is a File Id accessable to your user. This is the biggest thing RClone doesn't have, and allows you to clone from random public directories without having to add them to My Drive.

alias

Alias, specified as alias_name:path/to/some/folder, uses an alias to show some root folder. This feature is still being worked on and will be fleshed out later.

auth

To authenticate with gdrove, you'll need to create a credentials.json in the directory you're running the program in. This requirement may be lifted in the future, with default credentials supplied. You can use gdrove config account user acnt_name to create and authorize a new account named acnt_name. You can also create a Serivce Account using gdrove config account sa acnt_name sa.json to create a new Serivce Account named acnt_name using the Service Account file sa.json.

syncing

To sync, use gdrove sync account_name source_path destination_path, with account_name being the name of an account, source_path being the path to the source folder, and destination_path being the path to the destination folder.

TODO

  • Resumable uploads/downloads
  • Force create target folders
  • Global credentials files
  • Multithreaded ltd/dtl
  • Impersonation (not as bad as it sounds, I swear)
  • Use mass service accounts to copy files faster
  • Command line piping concept

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

GDrove-1.2.1.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

GDrove-1.2.1-py3-none-any.whl (14.1 kB view details)

Uploaded Python 3

File details

Details for the file GDrove-1.2.1.tar.gz.

File metadata

  • Download URL: GDrove-1.2.1.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.0.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.2

File hashes

Hashes for GDrove-1.2.1.tar.gz
Algorithm Hash digest
SHA256 d4a30d39dfd8e98966f19c8b4a9fff69952cf4c15526ce25b26c5c0be1ab57f8
MD5 1343af6cdb76f69de47dffdf14270b44
BLAKE2b-256 2d1d905280abebb1b390279376048f45debfe318935537061879fa9e4548a90e

See more details on using hashes here.

File details

Details for the file GDrove-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: GDrove-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 14.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.0.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.2

File hashes

Hashes for GDrove-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 22fdb9209d193b75c7ef5d55e417f8488f9fecc6dee97682bc771a2c28520b73
MD5 4516940d68958219dcbecad8d6cd9d93
BLAKE2b-256 fa05fab2bf46c154d07d41bdf9e23be2b6553664f9d0c9e4a0eb86cbac572e0c

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