- A+
所属分类:未分类
在前面几篇文章里面爱在灵灵久博客分享了
以及其他百度网盘使用的工具,总结起来有批量重命名、批量分享文件、批量离线下载、满速下载等多篇文章,大家可以通过本站搜索‘百度网盘’具体查看相应文章。今天继续分享如何批量导出自己百度网盘内已分享文件的标题名称、链接、提取密码、浏览次数、保存次数、下载次数、分享时间、失效时间等信息。
目前有软件界面版的了 百度网盘批量处理大师
一、使用的环境工具
还是Windows10 64位操作系统 python3.6版本,pycharm编辑器,安装使用到的是baidupcsapi库,通过pip install baidupcsapi 进行安装。如需要需要学习python相关知识这里有一些零基础入门视频教程,包括如何下载安装配置使用等,传送门。
二、baidupcsapi改造
在安装完baidupcsapi后需要对其进行改造,爱在灵灵久博客对其增加了相应的功能,首先定位到baidupcsapi库api模块的末尾处,将如下方法增加到里面:
- def get_share_list(self, page=1, order="ctime",**kwargs):
- """获取分享文件列表
- :return: requests.Repsonse
- 返回结果和list_files一样结构
- """
- params = {"channel": "chunlei",
- "clienttype": "0",
- "web": "1",
- "page": page,
- "order": order,
- "desc": "1"
- }
- url = 'https://pan.baidu.com/share/record?'
- return self._request('record', 'record', url=url, extra_params=params, **kwargs)
这样就可以添加获取已分享文件列表目录的功能。
三、批量导出步骤
第一步,引入百度网盘api类from baidupcsapi import PCS,并通过PCS登录自己的百度网盘。
第二步,获取分享文件目录列表sharelist = pcs.get_share_list(1)json().get("list")。
第三步,解析列表中各字段信息并打印出来。
- for file in sharelist:
- title = file.get('typicalPath').split('/')[-1]
- url = file.get('shortlink')
- passwd = file.get('passwd')
- viewcount = file.get('vCnt')
- savecount = file.get('tCnt')
- downcount = file.get('dCnt')
- creattime = time.strftime("%Y-%m-%d",time.localtime(file.get('ctime')))
- droptime = file.get('dtime')
- formatinfo = "标题:{}链接:{}密码:{}浏览次数:{}保存次数:{}下载次数:{}创建时间:{}失效时间:{}".format(
- title, url, passwd, viewcount, savecount, downcount, creattime, droptime
- )
- print(formatinfo)
第四步,在上一步的基础上进行一个while循环并判断pcs.get_share_list(i)json().get('errno'),若其不等于0则继续循环,若等于零则break。
四、源码下载
- from baidupcsapi import PCS
- import time
- pcs = PCS("用户名","密码")
- i = 1
- while True:
- sharelist = pcs.get_share_file(i).json().get("list")
- if sharelist:
- for file in sharelist:
- title = file.get('typicalPath').split('/')[-1]
- url = file.get('shortlink')
- passwd = file.get('passwd')
- viewcount = file.get('vCnt')
- savecount = file.get('tCnt')
- downcount = file.get('dCnt')
- creattime = time.strftime("%Y-%m-%d",time.localtime(file.get('ctime')))
- droptime = file.get('dtime')
- formatinfo = "标题:{}链接:{}密码:{}浏览次数:{}保存次数:{}下载次数:{}创建时间:{}失效时间:{}".format(
- title, url, passwd, viewcount, savecount, downcount, creattime, droptime
- )
- print(formatinfo)
- i += 1
- time.sleep(2)
- else:
- break
我的微信公众号
爱真理,得永生! 爱在灵灵久博客,网罗天下,福利大家!