百度网盘5MB每秒-你本来就很快

简介: 把你的百度网盘速度提升到5MB每秒, 心动吗?这是百度网盘官方提供的方法, 只是一般人不知道,速度限制:实测非会员下载5MB/s

牙叔教程 简单易懂

先说结论: 不冲会员, 也可以达到5MB/S.


是MB大写B哦, B字节,

不是小b,比特;

这是百度网盘官方提供的方法, 只是一般人不知道,

速度限制:实测非会员下载5MB/s

现在我来跟你讲讲使用步骤.

第一步 打开网盘控制台

https://pan.baidu.com/union/console/applist?from=person

第二步 点击创建应用

网页右上角

第三步 填写资料

名字随便填

点击创建

第四步 创建失败

去认证一下

https://pan.baidu.com/union/apply?

第五步 创建成功

第六步 看文档

https://pan.baidu.com/union/doc/

第七步 选择授权模式

前两个都要填写域名, 最后一个不用填写域名, 所以我选择

设备码模式

第八步 获取二维码

const axios = require('axios');

const { AppID, Appkey, Secretkey, Signkey } = require("./config.js");


axios.get('https://openapi.baidu.com/oauth/2.0/device/code', {

 params: {

   response_type: 'device_code',

   client_id: Appkey,

   scope: 'basic,netdisk'

 },

 headers: {

   'User-Agent': 'pan.baidu.com'

 }

})

 .then(response => {

   console.log(response.data);

 })

 .catch(error => {

   console.log(error);

 });


 // {

 //   device_code: 'e85exxxxxxxxxxx38b',

 //   user_code: '6xxxxxxxxk',

 //   verification_url: 'https://openapi.baidu.com/device',

 //   qrcode_url: 'https://openapi.baidu.com/device/qrcode/2d0382exxxxxxxxxx93e1/6xxxxxxck',

 //   expires_in: 300,

 //   interval: 5

 // }

获取到qrcode_url以后, 复制该链接到浏览器, 然后就会出现二维码, 用你的手机扫码二维码授权

第九步 获取Access Token

const axios = require('axios');

const { AppID, Appkey, Secretkey, Signkey } = require("./config.js");


axios.get('https://openapi.baidu.com/oauth/2.0/token', {

 params: {

   grant_type: 'device_token',

   code: 'e8xxxxxxxxxxxxxxxxxx38b',

   client_id: Appkey,

   client_secret: Secretkey

 },

 headers: {

   'User-Agent': 'pan.baidu.com'

 }

})

 .then(response => {

   console.log(response.data);

 })

 .catch(error => {

   console.log(error);

 });

 // {

 //   expires_in: 2592000,

 //   refresh_token: '12xxxxxxxxxxxxxxxxxXw',

 //   access_token: '126xxxxxxxxxxxxxxxxJNeg',

 //   session_secret: '',

 //   session_key: '',

 //   scope: 'basic netdisk'

 // }

第十步 看下载文档

https://pan.baidu.com/union/doc/pkuo3snyp

第十一步 获取文件列表

async function getFileList() {

 try {

   const response = await axios.get("https://pan.baidu.com/rest/2.0/xpan/file", {

     params: {

       method: "list",

       dir: "/test",

       order: "time",

       start: 0,

       limit: 10,

       folder: 0,

       access_token: access_token,

       desc: 1,

     },

     headers: {

       "User-Agent": "pan.baidu.com",

     },

   });

   console.log(response.data);

 } catch (error) {

   console.log(error);

 }

}

我再目录test传了一个46.53MB的文件用于测试

返回的文件列表信息

{

 errno: 0,

 guid_info: '',

 list: [

   {

     tkbind_id: 0,

     owner_type: 0,

     category: 6,

     real_category: 'rar',

     fs_id: 1011xxxxxxxx288,

     md5: '5eeabxxxxxxxxxxx82183',

     oper_id: 231xxxxxxxxx846,

     server_ctime: 168xxxxxxxx05,

     extent_tinyint7: 0,

     wpfile: 0,

     local_mtime: 16xxxxxxxxx4658,

     size: 4xxxxxxxxx390,

     from_type: 0,

     pl: 1,

     share: 0,

     server_atime: 0,

     path: '/test/psxxxxxxxx.rar',

     local_ctime: 166xxxxxx79,

     server_mtime: 168xxxxxxxx05,

     server_filename: 'psxxxxxxx.rar',

     owner_id: 0,

     unlist: 0,

     isdir: 0

   }

 ],

 request_id: 87xxxxxxxxxxxxx00,

 guid: 0

}

第十二步 获取文件信息

async function getFileMetas() {

 try {

   const response = await axios.get("http://pan.baidu.com/rest/2.0/xpan/multimedia", {

     params: {

       method: "filemetas",

       access_token: access_token,

       fsids: `[${fs_id}]`,

       thumb: 0,

       dlink: 1,

       extra: 0,

     },

     headers: {

       "User-Agent": "pan.baidu.com",

     },

   });

   console.log(response.data);

 } catch (error) {

   console.log(error);

 }

 // {

 //   errmsg: 'succ',

 //   errno: 0,

 //   list: [

 //     {

 //       category: 6,

 //       dlink: 'https://d.pcs.baidu.com/file/5eexxxxxxxx183?fid=231xxxx',

 //       filename: 'pxxxxxx.rar',

 //       fs_id: 101xxxxxxxxxxxx1288,

 //       isdir: 0,

 //       local_ctime: 1xxxxxxxxxx579,

 //       local_mtime: 16xxxxxxxxx658,

 //       md5: '5eeabb4exxxxxxx2183',

 //       oper_id: 23xxxxxxxxxxx6846,

 //       path: '/test/xxxxxx.rar',

 //       server_ctime: 16xxxxxxx705,

 //       server_mtime: 16xxxxxxxxx3705,

 //       size: 48790390

 //     }

 //   ],

 //   names: {},

 //   request_id: '87xxxxxxxxxx651'

 // }

}

第十三步 下载文件

不允许使用浏览器直接下载超过50MB的文件, 超过50MB的文件需用开发者原生的软件或者app进行下载

我的文件刚好没有50MB, 我去整个100M的试试

上传了一个93MB的文件, 看看能不能正常下载

function downloadFile() {

 let dlink =

   "https://d.pcs.baidu.com/file/5exxxxxxxxxx"

 let url = `${dlink}&access_token=${access_token}`;


 return new Promise((resolve, reject) => {

   axios

     .get(url, {

       headers: {

         "User-Agent": "pan.baidu.com",

         Host: "d.pcs.baidu.com",

       },


       responseType: "stream",

     })

     .then((response) => {

       const writeStream = fs.createWriteStream("file.zip");

       response.data.pipe(writeStream);

       writeStream.on("finish", () => {

         resolve(true);

       });

       writeStream.on("error", (error) => {

         reject(error);

       });

     })

     .catch((error) => {

       console.log(error);

       reject(false);

     });

 });

}

你们知道下载时间多少吗?

async function main() {

 let startTime = new Date().getTime();

 let downloadRes = await downloadFile();

 console.log(downloadRes);

 let endTime = new Date().getTime();

 console.log(`下载耗时:${(endTime - startTime) / 1000}s`);

}

main();


下载耗时:17.833s // 93.06MB

Y的不比阿里慢呀

备注

目前下载sdk仅支持小文件下载,如果涉及大文件,可参考该demo进行升级改造,涉及到分片下载、断点下载等技术

以上代码均由ChatGPT4生成, 我用的是国内的服务商提供的chatGPT4服务, 不需要科技就可以正常用, 还支持画图


公众号 牙叔教程

这个ChatGPT星球有多牛逼

相关文章
|
人工智能 前端开发 Java
autojs非常见函数1
牙叔教程 简单易懂
2536 0
|
自然语言处理 Java API
阿里云自然语言处理--文本相似度(电商)Java SDK 调用示例
自然语言处理(Natural Language Processing,简称NLP),是为各类企业及开发者提供的用于文本分析及挖掘的核心工具,旨在帮助用户高效的处理文本,已经广泛应用在电商、文娱、司法、公安、金融、医疗、电力等行业客户的多项业务中,取得了良好的效果。文本相似度可以提供不同文本之间相似度的计算,并输出一个介于0到1之间的分数,分数越大则文本之间的相似度越高。可广泛应用于信息检索,新闻推荐、智能客服等场景。使用该服务建议分数不要用于直接判断,可以作为特征,并按照范围进行分桶。本文将使用Java Common SDK 演示文本相似度(电商)服务的快速调用以供参考。
995 0
阿里云自然语言处理--文本相似度(电商)Java SDK 调用示例
物联网卡不能使用在什么设备上
“物联网卡不能使用在什么设备上”这一操作或规定,通常基于物联网卡的特性、使用条款以及设备兼容性等因素。以下是对这一问题的详细分析和操作建议:
|
开发框架 前端开发 Java
【Spring】Spring框架介绍,功能模块,容器知识和有关Spring的生态圈的详细讲解
【Spring】Spring框架介绍,功能模块,容器知识和有关Spring的生态圈的详细讲解
542 0
|
人工智能 文字识别 API
20行代码教你如何批量提取图片中文字
大家好,我是志斌~ 之前志斌在考研的时候遇到了一个问题,就是要将图片中的文字给提取出来,当时是J哥帮忙搞出来的,现在已经考完研了,也学会了提取方式,现在来给大家分享一下。
1515 0
20行代码教你如何批量提取图片中文字
|
人工智能
批量提取某音视频文案(二)
介绍批量提取视频文案的流程, 以及做视频的步骤
982 0
|
存储 弹性计算 固态存储
阿里云服务器配置怎么选择合适?收藏级教程大家参考下
阿里云服务器配置选择涉及CPU、内存、带宽和磁盘。个人开发者或中小企业推荐使用轻量应用服务器或ECS经济型实例,如2核2G3M配置,适合低流量网站。企业用户应选择企业级独享型ECS,如通用算力型u1、计算型c7或通用型g7,至少2核4G配置,公网带宽建议5M,系统盘可选SSD或ESSD云盘。具体配置需根据实际应用需求来定。
822 0