用 Python 高效智能管理文件夹( 二 )


部分关键就是要写个循环,遍历到所有文件夹的最内层 。用os.listdir获取文件名list,把文件名记录到一个dataframe,核心代码如下:
1.获取第二层文件夹名字(第一层就是默认以“我的文件夹”为名)

用 Python 高效智能管理文件夹

文章插图
   2.用循环获取第三层直至最后一层的文件夹名字(再次用os.listdir打开储存在dataframe中的文件夹路径,获取该链接下的文件名,如果本层级的所有文件夹下面都没有文件了,就跳出循环;否则就继续深入 。)
我这里先设定了深入到20层,一般文件夹用不到20层,就会结束循环 。
用 Python 高效智能管理文件夹

文章插图
   3.获取文件的最近一次修改时间
用 Python 高效智能管理文件夹

文章插图
   4.最终得到如下的层级结构
用 Python 高效智能管理文件夹

文章插图
   (二)将dataframe(df)转化成符合tree图要求的list格式数据 。
tree图中,每个点的属性有三个:name,value,children 。name是某个点的名字,value是该点的自定义内容,我把每个文件夹的链接地址和修改时间储存到value中 。每一个点不一定都有childeren属性,它是包含该点下一层级支点的信息,下一层支点又可以带有以上三个属性 。
也是类似地按照第一步一层层地将dataframe转变成list,不同的是,第一步的层级结构是要从文件夹里分析出来的,这一步是从那个df里面读取的 。
(三)在html中增加其他功能的按钮,使其能和本地python程序交互 。例如根据文件夹路径打开文件夹;根据搜索的关键词,查找本地文件夹名字或者文件内容 。
用 Python 高效智能管理文件夹

文章插图
   (四)最后,使用flask搭建本地服务器,在浏览器上使用本软件 。
用 Python 高效智能管理文件夹

文章插图
   用flask将本地处理好的数据上传到html 。运行flaskhtml.py之后,出现如下界面,就代表本地网站服务器已经运行了,打开浏览器,输入网址127.0.0.1:5000,就可以打开主页面了 。
用 Python 高效智能管理文件夹

文章插图
   




推荐阅读