Skip to content

针对百度网盘的油猴脚本,可导出百度网盘共享文件库目录清单

License

Notifications You must be signed in to change notification settings

thinkido/BaidunNetDisk-script

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 

Repository files navigation

导出百度网盘_共享的文件库文件清单 油猴脚本

虽然自己的网盘,有导出目录的工具,但是很多用户间分享的网盘数据,动辄10T 20T,不可能都转存到自己的网盘中。而且转存也有文件数量限制等。 现在买网盘资源,基本都是这种分享方式,而不是卖账号。 因此,分享的网盘资源,里面到底有些什么内容,其实很不方便查看

搜索了一圈,没有现成的方案,大家都在关注如何加速下载等,github上虽然百度网盘相关项目有近百个,但是没有专门导出目录信息的项目。 而且主要都还是针对自己的网盘文件,这种在群中分享的网盘资源,没有现成的访问方法。 没办法,大佬们不关注这个需求,只能自己动手了。 在参考了github中的相关项目,比较了多种技术手段(python脚本,java程序,go语言,油猴脚本)后,本人使用油猴脚本方式来实现这个功能。 功能设计: 导出分享文件库的所有目录和文件内容清单,同时对文件夹内的文件数量和尺寸进行递归统计。

针对百度网盘的油猴脚本,可导出百度网盘共享文件库目录清单 chrome浏览器+油猴脚本测试通过 油猴脚本怎么用我就不写了,请自行百度。 下面写写脚本用法 1 油猴插件中启用本脚本

2 百度网盘PC程序,好友分享界面,点击要导出的共享会话,点击文件库. (如果chrome设为缺省浏览器,这时会在浏览器中显示文件库)

3 chrome浏览器中,百度网盘文件库界面,会多出一个”导出目录信息“的按钮。(油猴插件和本脚本都正确加载)

如图,先选择要导出的文件夹,可以单选,可以多选,可以全选,然后点击按钮开始生成清单

4 接下来就是等待,不要关闭页面,清单生成速度同你要导出数据有多少个子目录有关。很多分享的网盘内部文件非常多,等待时间会比较长,大概8000个子目录,需要1个多小时。 清单生成完成后,会弹出文件保存对话框,你可以选择保存到本机目录

建议先找一个子文件夹少的目录,试用试用,可以很快出结果。免得等几个小时没结果认为我忽悠人。

如果想看到进度,按F12打开调试面板,选择Console面板,可以看到取清单的消息在运行。

0.5版本增加了单独导出子目录的功能,增加了2个按钮, “ID” 和“子目录”。 在根目录下选择子文件夹所在目录,点击<ID按钮>获取主目录信息。然后可以进入子目录,选择要导出的子目录进行导出

5 保存的内容,是文本文件,按照tree命令的输出格式输出,大致如下的样子

文件夹,下面列出所有子文件及子文件夹,文件夹统计了其整体空间之和,文件单独输出了文件大小。

6 百度网盘的通讯协议还有些复杂,我也就弄了两天,第一次写js和油猴脚本,经验也不足,现在这个程序还有一些不完善之处

第一: 如果一个文件夹下面子文件超过100(不是文件夹包含的所有文件,是直接在该文件夹下面的文件),有可能超过100的文件列不出来。这个问题我还没有专门测试,我也没有这种极端情况,后面有需求时再说

第二:限于现在了解的JS特性,没有用异步请求,所以列表生成比较慢。能否有方法加速,如有js高手可以尝试一下,反正源码都公开了

------------ 2019.7.6 ----------- 功能更新

  1. 解除一个文件夹只能导出100个子文件限制,可以输出子目录所有文件 (最多3000)
  2. 文件前面输出目录的层次信息,方便过滤
  3. 文件信息增加输出全路径名

----------- 2020.10.26 ---------- 增加单独导出子目录的功能 简化代码结构

About

针对百度网盘的油猴脚本,可导出百度网盘共享文件库目录清单

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%