博客
关于我
JAVA获取百度网盘下载真实地址
阅读量:579 次
发布时间:2019-03-11

本文共 1575 字,大约阅读时间需要 5 分钟。

除了undsrawing工具,只能了解如何获取百度网盘的真实下载链接


一、获取百度网盘真实下载链接的方法

1. 前置条件:

  • 操作系统:支持Java运行的操作系统(如Windows、Linux)
  • Java开发环境(JDK):版本为Java 8及以上
  • IDE:建议使用Eclipse或IntelliJ IDEA

2. 使用方法:

运行程序的命令如下:

java -jar BaiduPanURL.jar [你的百度网盘分享链接]

3. 使用说明:

  • 方括号中的 [你的百度网盘分享链接] 是你需要下载的资源地址
  • 如果不需要特定资源地址,可以直接运行 java -jar BaiduPanURL.jar
  • 如果遇到验证码需求,请在程序提示下输入正确验证码

二、程序FunctionFlags说明

本程序基于浏览器抓包技术,分析百度网盘的API接口,构建了一个获取百度网盘真实下载链接的工具。以下是程序的主要功能和实现原理:

1. 获取百度网盘的cookie

第一步是获取百度网盘页面的cookie。通过抓包可以获取cookie的值,并进行解析和加密处理。

2. 解析分享链接的参数

通过第三方工具(如curl、Postman)抓取页面的body参数,提取出资源ID、文件名、大小等必要信息。

3. 发送sharedownload请求

构造一个.post请求,发送到百度网盘的API接口 /api/sharedownload,并附带必要的参数。

4. 解析服务器返回的JSON

接收服务器返回的JSON数据,提取出真实的下载链接(dlink字段)。

5. 处理验证码(如需)

如果用户连续下载超出限制将被返回验证码。程序会自动获取验证码图片并弹出验证码输入界面。


三、程序架构

1. 主程序:GetBaiduCloudRealURL

  • 负责整个流程的控制和调用
  • 与HttpUtils类配合发送和接收请求

2. 辅助类:HttpUtils

  • 实现了GET、POST请求功能
  • 返回cookie、body等数据
  • 用于下载验证码图片

3. JSON解析类:Utils

  • 使用Gson库解析服务器返回的JSON数据

4. 参数拼接工具

通过类似curl的方式构造请求参数


三、代码功能解析

1. GetBaiduCloudRealURL类:

  • main方法:程序入口,接收参数
  • 获取初始cookie
  • 调用getBodyParams获取参数
  • 发送POST请求
  • 处理验证码输入
  • 解析dlink地址

2. HttpUtils类:

  • get方法:发送GET请求,返回cookie和body
  • saveImage方法:下载验证码图片
  • download方法:下载文件,支持进度显示
  • post方法:发送HTTP POST请求

四、使用流程示例

  • 执行命令:java -jar BaiduPanURL.jar https://pan.baidu.com/s/1eQrwbKY

  • 系统自动获取cookie

  • 发送POST请求到 /api/sharedownload

  • 服务器返回JSON数据,提取出真实下载链接

  • 根据配置决定是否下载文件


  • 五、依赖和工具

    • 第三方库: Gson(解析JSON)
    • 工具:FileOutputStream(文件输出流)
    • ** IDE**:Eclipse或IntelliJ IDEA

    六、常见问题解答

  • 程序下载速度慢?

    • 请检查网络连接
    • 建议使用Proxies设置或配置اطلributer
  • 验证码输入后下载失败?

    • 确保输入的验证码正确
    • 可以在程序日志中查看错误信息
  • Error Code:-20?

    • 意味着超出下载频率限制
    • 需要手动输入验证码

  • 结论

    本程序基于浏览器抓包技术,解析百度网盘的API接口,已成功获取大量资源的真实下载链接。如果需要获取更多技术攻略或有任何问题,请联系开发者。

    转载地址:http://qoqvz.baihongyu.com/

    你可能感兴趣的文章
    Mysql_Postgresql中_geometry数据操作_st_astext_GeomFromEWKT函数_在java中转换geometry的16进制数据---PostgreSQL工作笔记007
    查看>>
    mysql_real_connect 参数注意
    查看>>
    mysql_secure_installation初始化数据库报Access denied
    查看>>
    MySQL_西安11月销售昨日未上架的产品_20161212
    查看>>
    Mysql——深入浅出InnoDB底层原理
    查看>>
    MySQL“被动”性能优化汇总
    查看>>
    MySQL、HBase 和 Elasticsearch:特点与区别详解
    查看>>
    MySQL、Redis高频面试题汇总
    查看>>
    MYSQL、SQL Server、Oracle数据库排序空值null问题及其解决办法
    查看>>
    mysql一个字段为空时使用另一个字段排序
    查看>>
    MySQL一个表A中多个字段关联了表B的ID,如何关联查询?
    查看>>
    MYSQL一直显示正在启动
    查看>>
    MySQL一站到底!华为首发MySQL进阶宝典,基础+优化+源码+架构+实战五飞
    查看>>
    MySQL万字总结!超详细!
    查看>>
    Mysql下载以及安装(新手入门,超详细)
    查看>>
    MySQL不会性能调优?看看这份清华架构师编写的MySQL性能优化手册吧
    查看>>
    MySQL不同字符集及排序规则详解:业务场景下的最佳选
    查看>>
    Mysql不同官方版本对比
    查看>>
    MySQL与Informix数据库中的同义表创建:深入解析与比较
    查看>>
    mysql与mem_细说 MySQL 之 MEM_ROOT
    查看>>