Metadata-Version: 2.1
Name: cloudfile
Version: 0.2.7
Summary: Upload and restore large files in the intented location.
Home-page: https://github.com/takotab/cloudfile
Author: Tako Tabak
Author-email: takotabak@gmail.com
License: MIT
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Description-Content-Type: text/markdown
Requires-Dist: wget
Requires-Dist: fire

# Cloudfile
Cloudfile can upload and download (large) files to the original position.


[![codecov](https://codecov.io/gh/takotab/cloudfile/branch/master/graph/badge.svg)](https://codecov.io/gh/takotab/cloudfile) [![Downloads](https://pepy.tech/badge/cloudfile)](https://pepy.tech/project/cloudfile)

# Installation
- `pip install cloudfile`
- If you only want to use cloudfile to restore you are done. 
- To also upload you need to install Google Client Library, make an API key, and login to your google account. This means executing:
  -  `python -m cloudfile enable_google_api`

        This will install the Google Client Library and open https://developers.google.com/drive/api/v3/quickstart/python

        On site, click on `Enable the Drive API` to make an API key. Save the file in the root directory as `credentials.json`.

  -  `python -m cloudfile enable_google_drive`

        This will make you sign in to your google account.


# Usage
- `python -m cloudfile restore`

    This will restore the keys with the corresponding urls in `cloudfile.json`. Add `--hard=True` to download all file even if they already exist.

- `python -m cloudfile restore_file file`

    This will restore the specified file from the corresponding urls in `cloudfile.json`. Add `--hard=True` to download all file even if they already exist.

- `python -m cloudfile add folder`

    Uplouds file or the content of the folder to google drive and adds the link to `cloudfile.json`. 

- `python -m cloudfile add_file file`

    Uploud the file to google drive and adds the link to `cloudfile.json`.  The files will be called `cloudfile_{filename}` and by default will be accessible to anyone who has the link.

- `python -m cloudfile add_link file url`

    Add a file to `cloudfile.json` the location should be `file` and `link` is the download location. Please ensure it's the actual file not the share page.
    You can use: [https://syncwithtech.blogspot.com/p/direct-download-link-generator.html](https://syncwithtech.blogspot.com/p/direct-download-link-generator.html) to convert a link to the actual file.
    Note when using this option enclose with "". Your shell will otherwise mess up the input if there are strainge tokens in there (e.g. ?).

- `python -m cloudfile del_link file`

    Delete a link from `cloudfile.json`

- `python -m cloudfile download file`

    Download the file even if the file already exists.

# TODO
- make zip of files
- Handle larger files (<5MB)
- Make a google drive folder `cloudfile` 


