android中抓取百度网盘共享文件夹数据为服务器分压

1、引言

        对于个人开发者来说,服务器带宽和流量一直备受关注,也是制约其发展壮大的重要因素,如果能降低服务器带宽和流量带来的费用,其好处不言而喻,今天就教大家如何把分享出去的百度网盘共享链接中的数据抓取出来,提供给用户使用,而不是去访问自己的服务器,变相的降低服务器的压力,同时也减少了服务器带宽和流量的消耗,同时源码下载地址会放在文章末尾,大家下载源码对比查看。

2、准备工作

        首先你需要在百度网盘中创建一个专用的文件夹,用于存储数据,然后把这个文件夹分享出去,保存分享链接,我们就是通过这个链接去抓取数据,而且我们如果在该共享文件夹中更新了数据,用户获取的数据也会相应更新,这用来存放一些静态数据十分方便。

3、实现原理

        用过百度网盘的朋友们都不陌生,百度网盘现在是不支持在网页端下载文件的,那么我们如何从百度网盘获取数据呢?这里首先要打破一下大家的认知误区,数据不一定是存储在文件或是数据库中的,万物皆数据,文件夹的名字或者文件名本身就是一种数据,所以我们是通过文件夹或者文件名来存储数据的,这里我采用文件夹存储数据,数据就是文件名,不过是特殊格式的文件名才能存储数据,这里大家自己制定规则。

4、实现步骤

        大家先看我这个百度网盘分享链接,不要把密码放在链接里,如图所示:

        然后在火绒浏览器中新打开一个隐私窗口,在浏览器隐私窗口地址栏输入上面这个链接回车,并复制变化后的链接地址保存,当然你用其他浏览器也行,但必须单独打开隐私窗口,不然这个地址变化可能会被跳过,获取的地址如图所示:

        进入上面这个地址后是下图这个样子,接下来我们要用代码控制输入这个分享链接的密码,并主动触发提取文件按钮的点击监听,页面如下图所示:

android中抓取百度网盘共享文件夹数据为服务器分压_第1张图片

        控制的核心函数如下:

//调用这个函数就能输入相应密码并触发提取按钮
//具体实现机制下载源码查看
edit();

        点击提取后会跳转到分享文件夹页面,复制并保存链接,此时我们还需要跳转子文件夹,数据都放在子文件夹里面,分享文件夹页面如下所示:

android中抓取百度网盘共享文件夹数据为服务器分压_第2张图片

        跳转子文件夹后页面和代码如下所示:

android中抓取百度网盘共享文件夹数据为服务器分压_第3张图片

 

//控制跳转子文件夹的函数如下,具体实现机制下载源码查看
start();

        进入子文件夹页面后我们读取整个子文件夹页面的子文件夹名就可以了,然后解析成对应的数据,这里大家可以根据实际需求建立多级文件夹,跳转文件夹的规则都是一样的,最终提取效果和提取代码如下所示:

android中抓取百度网盘共享文件夹数据为服务器分压_第4张图片

//提取函数如下,具体实现机制请下载源码对比查看
read();

5、源码下载

源码下载地址:code.drjtrtj.xyz/downCode?id=2

你可能感兴趣的:(服务器,运维,android)