百度网盘批量获取分享链接-Python交流社区-开发交流-WordPress主题模板-zibll子比主题

百度网盘批量获取分享链接

偶然间想到的

目前代码还没有完全写完,但是有一些思路了,应该大差不差的

首先模拟一次分享链接进行抓包

就不放图了

直接上代码

import requests

cookies = {

    'BDUSS': '替换为你自己的,下面会放出获取教程',
}

headers = {
    'Accept': 'application/json, text/plain, */*',
    'Accept-Language': 'zh-CN,zh;q=0.9',
    'Cache-Control': 'no-cache',
    'Connection': 'keep-alive',
    'Content-Type': 'application/x-www-form-urlencoded',
    'Origin': 'https://pan.baidu.com',
    'Pragma': 'no-cache',
    'Referer': 'https://pan.baidu.com/disk/main',
    'Sec-Fetch-Dest': 'empty',
    'Sec-Fetch-Mode': 'cors',
    'Sec-Fetch-Site': 'same-origin',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36',
    'X-Requested-With': 'XMLHttpRequest',
    'sec-ch-ua': '"Google Chrome";v="131", "Chromium";v="131", "Not_A Brand";v="24"',
    'sec-ch-ua-mobile': '?0',
    'sec-ch-ua-platform': '"Windows"',
}

params = {
    'web': '1',
    'dp-logid': '79957000643823030154',
}

data = {
    'period': '0',
    'pwd': '8888',
    'eflag_disable': 'true',
    'channel_list': '[]',
    'schannel': '4',
    'fid_list': '[1070531854436629]',
}

response = requests.post('https://pan.baidu.com/share/set', params=params, cookies=cookies, headers=headers, data=data)
print(response.text)

首先说一下BDUSS的获取教程

 

随便打开一个文件夹,这个过程需要你提前打开开发者工具进行抓包,也就是在没有打开文件夹之前就打开开发者工具,也就是F12,找到网络,或者network。然后打开一个文件夹,在请求列表中一般会有下面的一个请求,一般双击该值就可以得到内容,然后粘贴到代码中。

20250329004625560-image-98

代码中的请求表单,也就是data,经过测试

 
period   的值是链接有效期天数,分别为,1 ,7, 30 ,365 ,0  ,,,0则代表永久
pwd代表的是密码。很遗憾这个并不能模拟随意生成,因为在这个请求的返回数据中没有pwd的返回值,所以一般是固定的,当然你也可以写入到excel中,然后上传,这样子就不至于所有文件链接都用一个提取码

里面最重要的一个就是

‘fid_list’: ‘[120961216429429]’,

这个值是文件的专属data-id

每一个文件都不一样,但是在某个文件夹中他是采用的列表api请求,这个也可以通过抓包获取

 

在返回数据中有这么一个值

20250329011303389-image-99

他就是每个文件的data-id值,这两个请求中的负载或者是cookie都没有加密,所以这个还是比较简单的,你们如果有需要,我后面写为软件,也可以找我定制,目前的想法是,通过固定的文件夹路径,先获取文件data-id循环请求,拿到数据然后获取分享链接与文件名称。有想法的可以在评论区留言有时间我会写成exe软件公布出来

请登录后发表评论