Wget/curl large file from google drive

curlgoogle-colaboratorygoogle-docsgoogle-drive-apiwget

I'm trying to download a file from google drive in a script, and I'm having a little trouble doing so. The files I'm trying to download are here.

I've looked online extensively and I finally managed to get one of them to download. I got the UIDs of the files and the smaller one (1.6MB) downloads fine, however the larger file (3.7GB) always redirects to a page which asks me whether I want to proceed with the download without a virus scan. Could someone help me get past that screen?

Here's how I got the first file working –

curl -L "https://docs.google.com/uc?export=download&id=0Bz-w5tutuZIYeDU0VDRFWG9IVUE" > phlat-1.0.tar.gz

When I run the same on the other file,

curl -L "https://docs.google.com/uc?export=download&id=0Bz-w5tutuZIYY3h5YlMzTjhnbGM" > index4phlat.tar.gz

I get the the following output –
enter image description here

I notice on the third-to-last line in the link, there a &confirm=JwkK which is a random 4 character string but suggests there's a way to add a confirmation to my URL. One of the links I visited suggested &confirm=no_antivirus but that's not working.

I hope someone here can help with this!

Best Solution

April 2021

You can use the gdown.

Install it with the following command:

pip install gdown

After that, you can download any file from Google Drive by running this command:

gdown https://drive.google.com/uc?id=file_id

The file_id should look something like 0Bz8a_Dbh9QhbNU3SGlFaDg, replace this value with the file_id of your file and it will work.

You can get it by right clicking on the file and then Get shareable link. Only work on open access files (Anyone who has a link can View). Does not work for directories. Tested on Google Colab. Works best on file download. Use tar/zip to make it a single file.

Example: to download the readme file from this directory

gdown https://drive.google.com/uc?id=0B7EVK8r0v71pOXBhSUdJWU1MYUk
Related Question