Giter Site home page Giter Site logo

automated-google-drive-program's Introduction

Automated-Google-Drive-Program

This is a basic security project for educational purposes.

About the Program

In recent times, we are much more used to cloud storage to store our data. There are many cloud storage providers around the world. Their main purpose is to store our data and provide us with the data when we need it. The most widely used cloud storage is Google Drive. In our day-to-day work, we use it a lot. To use this we need to visit Google Drive’s website or navigate Google Drive’s application.

After this, we can upload, delete and download files from there. This is pretty much easy and flexible for users. The security of the data from the time of uploading and storing is provided by Google itself. In our daily lives, we might need to upload a bunch of files and download them too. But if someone gets access to anyone’s Google Drive and steals the data while the owner of the data is not around? Google can’t do anything there to stop that unauthorized person. They have a feature, in which we can encrypt any of our files in the drive after uploading. But this requires a lot of time. Visiting the website or navigating apps then uploading or downloading files, encrypting files and then decrypting them seems very much manual work in a day to day life for a regular Google Drive user.

  1. What if all of that work is done in a minimum amount of time?
  2. What if the file is encrypted with AES256 while uploading it to the Drive automatically?
  3. What if all the files, folders and files in folders are visible in a list?
  4. What if the files are easily downloaded and then decrypted too?

All of these are possible using the Automated Google Drive Program. This program is Shell Scripted using Python. The reason behind the shell is to minimize the user’s time. We know that visiting a website or using an application GUI takes a lot of time in backend processing whereas direct shell commands take less time to process.

This program is for those users who use Google Drive in their daily work and need to save a lot of time investing in Google Drive.

This is a cross-platform program. It means this program can run on different OS machines.

How this program works

This program establishes a connection with Google Drive using Google Drive API and for authentication and authorization, OAuth 2.0 of Google is used.

After a successful authentication, the program starts. To know how the program is working in practice, a video is uploaded. It is recommended to read the whole documentation and satisfy the prerequisites before running the program and then watch the full video to learn how to operate this program.

Prerequisites

To run this file below things are needed to be installed in the machine if they are not present.

  1. Python 3.7 or above version. (Not below 3.7)

  2. pip 20.1.1 https://pypi.org/project/pip/

  3. google-auth-oauthlib 0.4.1 - https://pypi.org/project/google-auth-oauthlib/

  4. google-api-python-client 1.9.2 https://pypi.org/project/google-api-python-client/

  5. google-auth 1.16.1 https://pypi.org/project/google-auth/

  6. PyDrive 1.3.1 https://pypi.org/project/PyDrive/

  7. pickle5 0.0.10 https://pypi.org/project/pickle5/

  8. pyAesCrypt 0.4.3 https://pypi.org/project/pyAesCrypt/

  9. Google Client Library :

pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib

Exceptions in this program

While uploading files without encryption for the first an error may raise, something like this:

googleapiclient.errors.HttpError: <HttpError 400 when requesting https://www.googleapis.com/upload/drive/v2/files? alt=json&uploadType=resumable returned "Bad Request">

raise ApiRequestError(error) pydrive.files.ApiRequestError: <HttpError 400 when requesting https://www.googleapis.com/upload/drive/v2/files? alt=json&uploadType=resumable returned "Bad Request">

Don’t panic. This just arises because of an API request which is an exception of Google Drive API. Just wait for some time and try again. Sooner or later it will work.

Enjoy !!!!

automated-google-drive-program's People

Contributors

shubham-saha avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.