我试图在脚本中从谷歌驱动器下载一个文件,我这样做有点麻烦。我要下载的文件在这里。
我在网上搜了很多,终于下载了其中一个。我得到了文件的uid,较小的文件(1.6MB)下载正常,但较大的文件(3.7GB)总是重定向到一个页面,询问我是否想在不进行病毒扫描的情况下继续下载。谁能帮我跳过那个屏幕?
下面是我如何让第一个文件工作-
curl -L "https://docs.google.com/uc?export=download&id=0Bz-w5tutuZIYeDU0VDRFWG9IVUE" > phlat-1.0.tar.gz
当我对另一个文件进行同样操作时,
curl -L "https://docs.google.com/uc?export=download&id=0Bz-w5tutuZIYY3h5YlMzTjhnbGM" > index4phlat.tar.gz
我得到以下输出-
我注意到在链接的第三行到最后一行,有一个&confirm=JwkK,这是一个随机的4个字符的字符串,但建议有一种方法添加到我的URL确认。我访问的一个链接建议&confirm=no_antivirus,但这不起作用。
我希望这里有人能帮忙!
从2022年开始,你可以使用这个解决方案:
https://drive.google.com/uc?export=download&id=FILE_ID&confirm=t
“病毒扫描警告页面”的来源:
“下载无论如何”的表单张贴到相同的URL,但有额外的三个参数:
t
确认
uuid
如果你改变你原来的URL并添加其中一个:confirm=t,它将下载文件而没有警告页面。
把URL改成
https://drive.google.com/uc?export=download&id=FILE_ID&confirm=t
例如:
$ curl -L 'https://drive.google.com/uc?export=download&id=FILE_ID' > large_video.mp4
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 2263 0 2263 0 0 5426 0 --:--:-- --:--:-- --:--:-- 5453
添加confirm=t后,结果为:
$ curl -L 'https://drive.google.com/uc?export=download&id=FILE_ID&confirm=t' > large_video.mp4
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 128M 100 128M 0 0 10.2M 0 0:00:12 0:00:12 --:--:-- 10.9M
2022年6月
你可以用gdown。也可以考虑访问该页面以获得完整的说明;这只是一个总结,源回购可能有更多最新的说明。
指令
使用以下命令安装:
pip install gdown
在此之后,您可以通过运行以下命令之一从谷歌驱动器下载任何文件:
gdown https://drive.google.com/uc?id=<file_id> # for files
gdown <file_id> # alternative format
gdown --folder https://drive.google.com/drive/folders/<file_id> # for folders
gdown --folder --id <file_id> # this format works for folders too
示例:从该目录下载自述文件
gdown https://drive.google.com/uc?id=0B7EVK8r0v71pOXBhSUdJWU1MYUk
file_id应该类似于0Bz8a_Dbh9QhbNU3SGlFaDg。您可以通过右键单击感兴趣的文件并选择Get link来找到这个ID。自2021年11月起,该链接的形式为:
# Files
https://drive.google.com/file/d/<file_id>/view?usp=sharing
# Folders
https://drive.google.com/drive/folders/<file_id>
警告
只对开放文件有效。(“任何有链接的人都可以查看”)
不能下载超过50个文件到一个文件夹。
如果您可以访问源文件,您可以考虑使用tar/zip将其变成一个单独的文件来解决这个限制。
——更新
要下载该文件,请从这里获取python的youtube-dl:
YouTube-DL: https://rg3.github.io/youtube-dl/download.html
或者用pip安装:
sudo python2.7 -m pip install --upgrade youtube_dl
# or
# sudo python3.6 -m pip install --upgrade youtube_dl
更新:
我刚刚发现了这个:
右击要从drive.google.com下载的文件
点击获取共享链接
开启链路共享
点击共享设置
点击顶部下拉菜单的选项
点击更多
选择[x]打开-任何有链接的人
复制链接
https://drive.google.com/file/d/3PIY9dCoWRs-930HHvY-3-FOOPrIVoBAR/view?usp=sharing
(This is not a real file address)
将id复制到https://drive.google.com/file/d/:之后
3PIY9dCoWRs-930HHvY-3-FOOPrIVoBAR
粘贴到命令行:
youtube-dl https://drive.google.com/open?id=
把id贴在后面?id =
youtube-dl https://drive.google.com/open?id=3PIY9dCoWRs-930HHvY-3-FOOPrIVoBAR
[GoogleDrive] 3PIY9dCoWRs-930HHvY-3-FOOPrIVoBAR: Downloading webpage
[GoogleDrive] 3PIY9dCoWRs-930HHvY-3-FOOPrIVoBAR: Requesting source file
[download] Destination: your_requested_filename_here-3PIY9dCoWRs-930HHvY-3-FOOPrIVoBAR
[download] 240.37MiB at 2321.53MiB/s (00:01)
希望能有所帮助