Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
Uses the Google Drive API to upload a file, convert it to a file format, download it locally and delete it from Drive.
def poorMansConvert(di, inPath, outType, outPath):
from apiclient.http import MediaFileUpload
valid_output = [
if outType not in valid_output:
raise Exception("Out type not valid, use one of the following: %s" % ','.join(valid_output))
media_body = MediaFileUpload(inPath,resumable=True)
drive_file = di.files().insert(media_body=media_body, convert=True).execute()
file_id = drive_file['id']
if drive_file['exportLinks'].has_key(outType):
download_url = drive_file['exportLinks'][outType]
resp, content = di._http.request(download_url)
if resp.status == 200:
f = open(outPath,"w")
raise Exception("Failed to download file: %s" % resp)
raise Exception("Output file type not compatible with input file, use one of the following: %s" % ','.join(drive_file['exportLinks'].keys()))
return content
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment