首页 > 其他分享 >通过命令行从 Google Drive下载数据

通过命令行从 Google Drive下载数据

时间:2023-02-18 12:33:04浏览次数:51  
标签:cookies Google https -- Drive drive google 命令行 com

分享链接

Google Drive的分享链接格式通常为:

https://drive.google.com/file/d/<fileid>/view

其中这个​​<fileid>​​就是对应文件在服务器上的唯一标识符。

例如VA数据集在Google Drive上的链接即为:

https://drive.google.com/file/d/1q3M_73LRH7jwJpdfKUV2Xg7Wy3YUKY2x/view

其中的​​<fileid>​​​为​​1q3M_73LRH7jwJpdfKUV2Xg7Wy3YUKY2x​​,文件名可以自己取。

所以提取到的关键变量为:

filename='VA.zip'
fileid='1q3M_73LRH7jwJpdfKUV2Xg7Wy3YUKY2x'

wget 下载指令

针对小文件:

wget --no-check-certificate "https://drive.google.com/uc?export=download&id=${fileid}" -O ${filename}

即为:

​​wget --no-check-certificate "​​​​https://drive.google.com/uc?export=download&id=${'1q3M_73LRH7jwJpdfKUV2Xg7Wy3YUKY2x'}​​" -O ${'VA.zip'}​

如果文件大的话,需要对cookie进行处理:

wget --load-cookies /tmp/cookies.txt "https://drive.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://drive.google.com/uc?export=download&id=${fileid}' -O- | sed -rn 's/.confirm=([0-9A-Za-z_]+)./\1\n/p')&id=${fileid}" -O ${filename} && rm -rf /tmp/cookies.txt

整理成更方便的shell脚本示例为:

xxxx.sh

# cd scratch place
cd data/

# Download zip dataset from Google Drive
filename='OfficeHomeDataset_10072016.zip'
fileid='0B81rNlvomiwed0V1YUxQdC1uOTg'
wget --load-cookies /tmp/cookies.txt "https://drive.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://drive.google.com/uc?export=download&id=${fileid}' -O- | sed -rn 's/.confirm=([0-9A-Za-z_]+)./\1\n/p')&id=${fileid}" -O ${filename} && rm -rf /tmp/cookies.txt

# Unzip
unzip -q ${filename}
rm ${filename}
cd

​Gdown下载

如果采用Gdown下载(​​pip install gdown​​安装)命令行为

gdown 'https://drive.google.com/uc?id=FILE_ID'
gdown 'https://drive.google.com/uc?id=1q3M_73LRH7jwJpdfKUV2Xg7Wy3YUKY2x'

问题:

连接不上网络。

通过命令行从 Google Drive下载数据_sed

待解决。。。

参考文章:

​通过命令行从 Google Drive下载数据​

​离线服务器通过PC中转连接公网​

标签:cookies,Google,https,--,Drive,drive,google,命令行,com
From: https://blog.51cto.com/u_12074581/6065312

相关文章

  • 通过命令行从 Google Drive下载数据
    分享链接GoogleDrive的分享链接格式通常为:https://drive.google.com/file/d/<fileid>/view其中这个​​<fileid>​​就是对应文件在服务器上的唯一标识符。例如VA数据集在G......
  • 怎么在命令行打开mysql?
    在命令行打开mysql的方法:首先在cmd命令行中输入“netstartmysql”;然后输入“mysql-hlocalhost-uroot-p”,回车;最后输入mysql的账号密码,回车即可打开mysql数据库。 ......
  • 树莓派命令行配置wifi密码时如何实现密码加密(密文,非明文)
     首先需要知道,树莓派系统(原生系统)的wifi配置文件为:/etc/wpa_supplicant/wpa_supplicant.conf  配置该文件时,psk属性为密码,往往我们都是使用明文来进行配置,其实这里......
  • xcodebuild命令行工具使用详解
    xcodebuild命令行工具使用如何通过命令行编译ios项目?xcodebuild是一个命令行工具,允许你从命令行对Xcode项目和工作区执行编译、查询、分析、测试和归档操作。它对项目中......
  • Git命令行大全
    Git安装下载安装包后,直接下一步下一步就行。过程:略......Git全局设置gitconfig--globaluser.name"Chris"gitconfig--globaluser.email"1085351739@qq.com"创建......
  • 【Terminal】Neofetch:在命令行界面上呈现绚丽多彩的系统信息
    ✨NeofetchNeofetch是一个命令行界面的工具,可以用来在终端上显示系统的基本信息和ASCII艺术。它可以显示各种不同的信息,例如操作系统、内核版本、CPU、GPU、内存、主机名......
  • selenium webdriver 实例化对象的常用属性和方法
    1.获取当前标签页浏览器渲染之后的网页源代码driver.page_source2.获取当前标签页urldriver.get_url3.关闭当前标签页(如果只有一个标签页则关闭整个浏览器)......
  • Kubernetes:基于命令行终端UI的管理工具 K9s
    写在前面K9s是一个基于终端UI的K8S管理工具博文内容为k9s在windows、Linux以及docker安装Demo简单的热键使用。理解不足小伙伴帮忙指正我所渴求的,無非是......
  • 用 shell 脚本做命令行工具扩展----服务器客户端之间文件传输
    问题的提出公司开发机与远程服务器之间有严格的隔离策略,不能直接使用ssh登录,而必需通过跳板机。这样一来,本地与服务器之间的一些文件传输变得非常不便。经过咨询,运维教......
  • mongodb 命令行mongod启动报错
    abouttoforkchildprocess,waitinguntilserverisreadyforconnections.forkedprocess:3560ERROR:childprocessfailed,exitedwitherrornumber1Tose......