使用 wget 从 google 驱动器下载文件
Download a file from google drive using wget
我想将可在此地址查看的文件下载到 linux 远程:
https://drive.google.com/file/d/0Bz7KyqmuGsilT0J5dmRCM0ROVHc/view?usp=sharing
我希望我能用 wget
做到这一点。
我试过了
wget https://drive.google.com/file/d/0Bz7KyqmuGsilT0J5dmRCM0ROVHc/vgg16_weights.h5
响应是 404。
是否可以 wget
一个 google 驱动器文件?如果有,提供的路径是什么?如果没有,是否有任何替代方案(bash 或其他),这样我就可以避免将文件下载到本地并将其传输到远程?
将您的文件 ID 插入此 URL (https://drive.google.com/uc?export=download&id=
),然后用引号将 URL 括起来,这样 Bash 就不会误解 &
,像这样:
wget "https://drive.google.com/uc?export=download&id=0Bz7KyqmuGsilT0J5dmRCM0ROVHc"
引用here.
下载大文件时,Google Drive 添加了一个安全警告,会破坏上面的脚本。在这种情况下,您可以使用以下方式下载文件:
wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id=FILEID' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\n/p')&id=FILEID" -O FILENAME && rm -rf /tmp/cookies.txt
(脚本取自 here)
首先点击右上角的分享按钮,设置权限allow anyone with the link can view
。
点击左下角文件->下载为->PDF文档(.pdf),开始浏览器下载。
在下载器中找到URL,chrome在chrome://downloads/
中。
在我写这个答案的时候 URL link 是 https://docs.google.com/document/export?format=pdf&id=xxx&token=xxx&includes_info_params=true
我能够通过 wget 下载为 pdf
wget -O xxx.pdf "https://docs.google.com/document/export?format=pdf&id=xxx"
我找到的下载大文件的最快捷方式:
git clone https://github.com/chentinghao/download_google_drive.git
cd download_google_drive/
python download_gdrive.py FILE_ID DESTINATION_PATH
只是查看权限,需要FILE_ID和DESTINATION_PATH(包括文件名)。它从 November/12/2019 开始工作,并且已经 for more than a year。
另一个解决方案是googleapiclient。它使您能够自动化 downloading/uploading 具有其 ID 的私有文件。
注意:还要确保文件是公开共享的,而不是与群组或组织内部共享的
这对我有用:
https://www.matthuisman.nz/2019/01/download-google-drive-files-wget-curl.html
Google 如果文件大于 100MB 则显示警告,因此这种情况应单独处理。作者展示了如何做到这一点,并提供了自动化脚本:https://github.com/matthuisman/gdrivedl
我想将可在此地址查看的文件下载到 linux 远程:
https://drive.google.com/file/d/0Bz7KyqmuGsilT0J5dmRCM0ROVHc/view?usp=sharing
我希望我能用 wget
做到这一点。
我试过了
wget https://drive.google.com/file/d/0Bz7KyqmuGsilT0J5dmRCM0ROVHc/vgg16_weights.h5
响应是 404。
是否可以 wget
一个 google 驱动器文件?如果有,提供的路径是什么?如果没有,是否有任何替代方案(bash 或其他),这样我就可以避免将文件下载到本地并将其传输到远程?
将您的文件 ID 插入此 URL (https://drive.google.com/uc?export=download&id=
),然后用引号将 URL 括起来,这样 Bash 就不会误解 &
,像这样:
wget "https://drive.google.com/uc?export=download&id=0Bz7KyqmuGsilT0J5dmRCM0ROVHc"
引用here.
下载大文件时,Google Drive 添加了一个安全警告,会破坏上面的脚本。在这种情况下,您可以使用以下方式下载文件:
wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id=FILEID' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\n/p')&id=FILEID" -O FILENAME && rm -rf /tmp/cookies.txt
(脚本取自 here)
首先点击右上角的分享按钮,设置权限allow anyone with the link can view
。
点击左下角文件->下载为->PDF文档(.pdf),开始浏览器下载。
在下载器中找到URL,chrome在chrome://downloads/
中。
在我写这个答案的时候 URL link 是 https://docs.google.com/document/export?format=pdf&id=xxx&token=xxx&includes_info_params=true
我能够通过 wget 下载为 pdf
wget -O xxx.pdf "https://docs.google.com/document/export?format=pdf&id=xxx"
我找到的下载大文件的最快捷方式:
git clone https://github.com/chentinghao/download_google_drive.git
cd download_google_drive/
python download_gdrive.py FILE_ID DESTINATION_PATH
只是查看权限,需要FILE_ID和DESTINATION_PATH(包括文件名)。它从 November/12/2019 开始工作,并且已经 for more than a year。
另一个解决方案是googleapiclient。它使您能够自动化 downloading/uploading 具有其 ID 的私有文件。
注意:还要确保文件是公开共享的,而不是与群组或组织内部共享的
这对我有用: https://www.matthuisman.nz/2019/01/download-google-drive-files-wget-curl.html Google 如果文件大于 100MB 则显示警告,因此这种情况应单独处理。作者展示了如何做到这一点,并提供了自动化脚本:https://github.com/matthuisman/gdrivedl