批量导出百度网盘已分享文件标题链接浏览保存下载次数等信息python3api

  • A+
所属分类:未分类

批量导出百度网盘已分享文件标题链接浏览保存下载次数等信息python3api

在前面几篇文章里面爱在灵灵久博客分享了

    1. python3百度云网盘api关键词搜索后批量重命名文件可正则替换
    2. 百度网盘如何批量重命名,修改文件名、通过正则方式替换文件、文件夹名称的方法
    3. 如何使用python3批量分享百度网盘文件及内容的脚本工具

以及其他百度网盘使用的工具,总结起来有批量重命名、批量分享文件、批量离线下载、满速下载等多篇文章,大家可以通过本站搜索‘百度网盘’具体查看相应文章。今天继续分享如何批量导出自己百度网盘内已分享文件的标题名称、链接、提取密码、浏览次数、保存次数、下载次数、分享时间、失效时间等信息。

目前有软件界面版的了 百度网盘批量处理大师

一、使用的环境工具

还是Windows10 64位操作系统 python3.6版本,pycharm编辑器,安装使用到的是baidupcsapi库,通过pip install?baidupcsapi 进行安装。如需要需要学习python相关知识这里有一些零基础入门视频教程,包括如何下载安装配置使用等,传送门。

二、baidupcsapi改造

在安装完baidupcsapi后需要对其进行改造,爱在灵灵久博客对其增加了相应的功能,首先定位到baidupcsapi库api模块的末尾处,将如下方法增加到里面:

  1. def?get_share_list(self,?page=1,?order="ctime",**kwargs):
  2. ????"""获取分享文件列表
  3. ????:return:?requests.Repsonse
  4. ????返回结果和list_files一样结构
  5. ????"""
  6. ????params?=?{"channel":?"chunlei",
  7. ??????????????"clienttype":?"0",
  8. ??????????????"web":?"1",
  9. ??????????????"page":?page,
  10. ??????????????"order":?order,
  11. ??????????????"desc":?"1"
  12. ??????????????}
  13. ????url?=?'https://pan.baidu.com/share/record?'
  14. ????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")。

第三步,解析列表中各字段信息并打印出来。

  1. for?file?in?sharelist:
  2. ????title?=?file.get('typicalPath').split('/')[-1]
  3. ????url?=?file.get('shortlink')
  4. ????passwd?=?file.get('passwd')
  5. ????viewcount?=?file.get('vCnt')
  6. ????savecount?=?file.get('tCnt')
  7. ????downcount?=?file.get('dCnt')
  8. ????creattime?=?time.strftime("%Y-%m-%d",time.localtime(file.get('ctime')))
  9. ????droptime?=?file.get('dtime')
  10. ????formatinfo?=?"标题:{}链接:{}密码:{}浏览次数:{}保存次数:{}下载次数:{}创建时间:{}失效时间:{}".format(
  11. ????????title,?url,?passwd,?viewcount,?savecount,?downcount,?creattime,?droptime
  12. ????)
  13. ????print(formatinfo)

第四步,在上一步的基础上进行一个while循环并判断pcs.get_share_list(i)json().get('errno'),若其不等于0则继续循环,若等于零则break。

四、源码下载

  1. from?baidupcsapi?import?PCS
  2. import?time
  3. pcs?=?PCS("用户名","密码")
  4. i?=?1
  5. while?True:
  6. ????sharelist?=?pcs.get_share_file(i).json().get("list")
  7. ????if?sharelist:
  8. ????????for?file?in?sharelist:
  9. ????????????title?=?file.get('typicalPath').split('/')[-1]
  10. ????????????url?=?file.get('shortlink')
  11. ????????????passwd?=?file.get('passwd')
  12. ????????????viewcount?=?file.get('vCnt')
  13. ????????????savecount?=?file.get('tCnt')
  14. ????????????downcount?=?file.get('dCnt')
  15. ????????????creattime?=?time.strftime("%Y-%m-%d",time.localtime(file.get('ctime')))
  16. ????????????droptime?=?file.get('dtime')
  17. ????????????formatinfo?=?"标题:{}链接:{}密码:{}浏览次数:{}保存次数:{}下载次数:{}创建时间:{}失效时间:{}".format(
  18. ????????????????title,?url,?passwd,?viewcount,?savecount,?downcount,?creattime,?droptime
  19. ????????????)
  20. ????????????print(formatinfo)
  21. ????????i?+=?1
  22. ????????time.sleep(2)
  23. ????else:
  24. ????????break
  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: