背景:公司的网络上不了driver.google.com,却能够上得了googleusercontent.com (这是谷歌文件下载的直链),然后文件一大,下载到一半老是断,所以要避免文件夹直接压缩下载,只能一个一个下载,

一:首先第一步,要把要下载的文件夹分享出去,直接在文件夹那里右键-》共享-》记得选择知道链接的任何人,然后你的文件上就有一对情侣

注意:如果文件夹里的文件特别多,要滚动鼠标,然后所有文件都在列表了

二:按F12打开浏览器控制台

输入:

for(i=0;i<document.getElementsByClassName("WYuW0e").length;i++){console.log(document.getElementsByClassName("WYuW0e")[i].getAttribute("data-id"))}

得到

这些就是文件的ID,之后拿着这个ID,去网上找大佬无私奉献的直链转换工具,就能够得到直链下载地址,我这里用的是:

https://api.moeclub.org/GoogleDrive/

这个链接后面拼上id就能够获取到直链了

然后上代码:

# ids获取方式
# 在谷歌云盘浏览器控制台输入
# for(i=0;i<document.getElementsByClassName("WYuW0e").length;i++){console.log(document.getElementsByClassName("WYuW0e")[i].getAttribute("data-id"))}
from contextlib import closingids = ["18jWt4ak1zK1PHTFAVPojFJh9n_sYz","balabalablalalalfdsaldfas",
]
uri = "https://api.moeclub.org/GoogleDrive/"
outpath = "E:\\"
allok = []
allerr = []
import requests# proxies = {
#     'http': 'http://127.0.0.1:1080',
#     'https': 'http://127.0.0.1:1080'  # https -> http
# }okfile = r'ok.txt'
errfile = r'err.txt'for id_ in ids:try:print(f"开始请求下载{id_}")with closing(requests.get(uri + id_, allow_redirects=True, stream=True)) as myfile:# myfile = requests.get(uri + id_, allow_redirects=True, stream=True)print(f"获取下载链接成功,开始获取文件名")print(f"链接为:{myfile.url}")filename = myfile.headers.get("content-disposition").split("filename=")[1].replace("\"", "").split(";")[0]print(f"文件名为{filename}")filepath = outpath + filenameprint(f"开始保存到路径{filepath}")fh = open(filepath, 'wb')print(f"开始下载{filename}")filesize = int(myfile.headers.get('content-length'))print(f"文件大小为:{filesize/1024/1024} MB")downloaded = 0perper = 0for chunk in myfile.iter_content(chunk_size=2048):  # 每次下载5120,因为我的大点,我选择每次稍大一点,这个自己根据需要选择。downloaded += 2048per = downloaded/filesize*100if per - perper >= 1:print(f"下载进度为:{per} %")perper = perif chunk:fh.write(chunk)# print(f"获取下载链接成功,开始获取文件名")# print(f"链接为:{myfile.url}")# filename = myfile.headers.get("content-disposition").split("filename=")[1].replace("\"", "").split(";")[0]# print(f"文件名为{filename}")# filepath = outpath + filename# print(f"开始保存到路径{filepath}")# fh = open(filepath, 'wb')# fh.write(myfile.content)print(f"文件 {filename} 下载成功,并保存到了 {filepath}")allok.append(id_ + "," + filename)with open(okfile, 'a+') as ok:ok.write(id_ + "," + filename + "\n")  # 加\n换行显示except BaseException as e:allerr.append(id_)with open(errfile, 'a+') as err:err.write(id_ + "\n")  # 加\n换行显示print(f"发生异常: {e}")continueelse:fh.close()
print(allok)
print(allerr)
exit()

谷歌云盘批量下载文件相关推荐

  1. google云盘批量删除文件

    之前不小心把3万条数据全部解压到了根目录下,云盘瞬间爆满,而且也没办法全部删除.官方没有提供全部删除功能和批量删除功能,只能使用一些特殊方式来快速批量删除了. 方法一:使用colab运行python脚 ...

  2. ubuntu使用gdown下载谷歌云盘(google drive)文件

    参考:[小教程]Ubuntu gdown下载Google Drive文件 安装gdown: git clone https://github.com/wkentaro/gdown.git cd gdo ...

  3. 2019 Google Drive Api 上传文件到谷歌云盘 获取分享下载链接

    如果图片失效或者格式已乱,建议阅读原文   在[案例]搭建 Quizzes 网站,每天赚取 30-50 美元 提到下载站项目,因为整个项目代码加上一些说明,会导致内容太多,所以准备分成几部分,这样看起 ...

  4. 谷歌云盘Colaboratory如何载入文件

    谷歌云的Colaboratory的项目的确不错,提供Tesla K80这块高级的GPU加速功能,但是也存在一个问题. 因为Colaboratory是完全云端的,所以,每次如果想让他访问谷歌云盘的内容, ...

  5. 【我的第一个目标检测课题】2、薅一把Google的羊毛!使用Colaboratory链接谷歌云盘在线进行网络训练

    2020.12.30晚记 在上一篇中已经介绍了用自己的电脑配置了GPU,配置完后训练速度确实是大大提升,但是因为自己的轻薄本显存太少了,只有2G,而我们的数据集还挺大,图片分辨率也高,所以尽管把bat ...

  6. modelsim 各版本 网盘_阿里云盘官方下载-阿里云盘最新版本 v1.0.1

    阿里云盘app下载分享,阿里云盘是一款非常实用的手机云存储服务软件,原名为"阿里云网盘",存储空间大,操作速度快,非常便捷好用,欢迎下载使用~ [软件简介] 阿里云网盘是阿里云团队 ...

  7. 部署阿里云盘的目录文件列表程序教程

    现在拥有阿里云盘账号的伙伴应该很多了,大部分都有1T的存储容量,小部分有6T,重要的是上传下载的速度很快,相对于其他的网盘,要么是传输速度慢,要么是存储容量太低,所以阿里云盘算是目前最好的免费网盘了, ...

  8. 阿里云盘的目录文件列表程序Alist

    网盘列表软件很多,老苏之前分享过 Z-file 和 ShareList,这两款软件都支持多家第三方存储,可以直接将网盘从个人使用变成一个面向大众的资源网站,不过老苏觉得还是自己低调用用就好了,毕竟是会 ...

  9. 天翼云盘php插件,天翼云盘直接下载

    // ==UserScript== // @name 天翼云盘直接下载 // @icon http://cloud.189.cn/logo.ico // @version 0.14 // @names ...

  10. 从阿里云OSS上下载文件的总结

    本文再次特别感谢如下文档 阿里云官方文档 博客:https://blog.csdn.net/qq_41942909/article/details/95538687 ----------------- ...

最新文章

  1. LeetCode 218. The Skyline Problem
  2. Python 相对路径问题:“No such file or directory“,原因及解决方法
  3. 400 多页的 Java 面试笔记,各个公司面试真题!
  4. vue office在线编辑_VUE和Antv G6实现在线拓扑图编辑
  5. HDU 5730——Shell Necklace
  6. win10安装vmware tools + 无法拖拽文件解决
  7. mysql面向对象例子_PHP 面向对象实例:获取数据库用户数据
  8. crossorigin注解添加了解决不了跨域问题_springboot 处理跨域的2种方式
  9. Struts项目中引入了过滤器filter后出现中文乱码情况
  10. 华为S5700S-52P-LI-AC千兆网管交换机web登录界面配置
  11. python中替换字符串中子串的函数为_python替换字符串中的子串图文步骤
  12. 首席赚钱源码(外卖券+电影+淘宝客+提现裂变流量主)功能强大
  13. 去年直播android和ios打赏,iOS直播类APP上架历程
  14. MATLAB中的转置 和 复数的共轭转置
  15. Revisiting Graph Contrastive Learning from the Perspective of Graph Spectrum
  16. pc station v15 博图_博图的pcstation是做什么的?和wincc有什么区别?怎么使用?-工业支持中心-西门子中国...
  17. godis之aof持久化
  18. excel中计算单元格值等于1的数量
  19. slice,splice,split区别和作用
  20. VS2012中--查找定义后从未被使用的函数

热门文章

  1. 【Java核心技术卷】谈谈对Java平台的理解
  2. MYSQL 中取拼音首字母的函数
  3. [lammps教程]lammps原子沉积实例教程
  4. AICreateMeeting-遇见未来
  5. nekohtml 用法
  6. JAVA UDP 发送和接收数据
  7. 一些好用的开源监控工具汇总
  8. Android应用文本字体设置
  9. wmware 安装xp系统虚拟机
  10. 数据库试题及答案 两套