File size: 1,129 Bytes
019d164 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
from google.colab import auth
from oauth2client.client import GoogleCredentials
import os
class GoogleDrive_Dowonloader(object):
def __init__(self, use_pydrive):
self.use_pydrive = use_pydrive
if self.use_pydrive:
self.authenticate()
def authenticate(self):
auth.authenticate_user()
gauth = GoogleAuth()
gauth.credentials = GoogleCredentials.get_application_default()
self.drive = GoogleDrive(gauth)
def ensure_file_exists(self, file_id, file_dst):
if not os.path.isfile(file_dst):
if self.use_pydrive:
print(f'Downloading {file_dst} ...')
downloaded = self.drive.CreateFile({'id':file_id})
downloaded.FetchMetadata(fetch_all=True)
downloaded.GetContentFile(file_dst)
print('Finished')
else:
from gdown import download as drive_download
drive_download(f'https://drive.google.com/uc?id={file_id}', file_dst, quiet=False)
else:
print(f'{file_dst} exists.')
|