用python按日期将微信文件移动到月份文件夹内
微信的文件管理非常糟糕,不论是聊天中的自动接收的附件、视频、图片,还是手动保存的文件,都保存在一个文件夹内。不仅占据大量手机存储,而且成千上万的小文件夹在一个文件夹内,不仅查找、管理困难,甚至列个目录都极慢。
对于占据手机存储的问题,我采用同步后删除的方式,每天将微信的附件、视频、图片等全部复制到家庭NAS内,然后删除,一下子清理出几十G空间。每天同步,既保证数据不丢失,又能保证手机空间占用最小。
接下来,需要对移动到NAS上的微信文件,按照年月甚至日建立文件夹,将文件按日期移动到文件夹内。
python代码如下:
#encoding-utf8
import sys
import os
import time
import datetimefor file in os.listdir("./"):#只处理文件,不处理文件夹 if os.path.isdir(file):continue#获取文件真实的创建日期 createdate=datetime.datetime.fromtimestamp(os.stat(file).st_mtime)#创建年份文件夹year=createdate.strftime("%Y")if not os.path.exists(year):os.makedirs(year)#创建月份文件夹 month=createdate.strftime("%m")mpath=year + "/" + monthif not os.path.exists(mpath):os.makedirs(mpath)print(file+" created date:"+createdate.strftime("%Y-%m-%d"))#按创建日期将文件移到对对应的年月文件夹内cmd="mv \""+file+ "\" "+ mpathprint(cmd)os.system(cmd)
需要说明的是,python 文件创建时间如何获取。CSDN以及很多文章,都用st_ctime来获取文件创建时间。实际执行的时候发现,st_ctime获取的不是dir或ls时显示的文件日期,而是我们最后移动或复制这个文件的日期。
按照struct stat 定义:
time_t st_atime; /* time of last access -最近存取时间*/
time_t st_mtime; /* time of last modification -最近修改时间*/
time_t st_ctime; /* time of last status change -最后权限修改时间 */
因此,本文采用st_mtime,测试结果显示,与dir/ls显示的文件日期一致。
遗留问题:
以上代码还有个遗留问题,就是生成的mv指令,虽然用双引号给解决了中文文件名问题,但对于文件名前缀有“-”等特殊字符的情况,还没有处理。请各位指点。
用python按日期将微信文件移动到月份文件夹内相关推荐
- python按日期排序_python按修改时间顺序排列文件的实例代码
python按修改时间顺序排列文件,具体代码如下所示: import os def sort_file_by_time(file_path): files = os.listdir(file_path ...
- Python脚本定时发送微信文件
背景:朋友让我改一个文件,可我改完已经半夜了.这时候如果微信发给朋友恐会打扰他休息.于是决定用Python写一个自动发送微信信息的脚本,第二天早上自动发送. 任务简述:使用Python自动化程序,把f ...
- Python最新操作微信解决方案(附破解文件和代码)
本文我将给大家讲解微信机器人的制作,首先要跟大家说的就是:机器人不管是 QQ 机器人还是微信机器人,相对而言是比较灰色地带,本文中提供的几种方式,经过本人亲自测试,是很好用的!如果有需要,赶紧看看,这 ...
- python socket传输图片_python使用socket传输图片视频等文件的实现方式
python使用socket传输图片视频等文件的实现方式 来源:中文源码网 浏览: 次 日期:2019年11月5日 [下载文档: python使用socket传输图片视频等文件的实现方式 ...
- Python爬虫爬取微信朋友圈的方法,感兴趣的朋友可以了解下
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 小雨 | 作者 python教程 | 来源 接下来,我们将实现微信朋友圈的 ...
- python+appium爬取微信运动数据,并分析好友的日常步数情况
python+appium爬取微信运动数据,并分析好友的日常步数情况 声明:仅供技术交流,请勿用于非法用途,如有其它非法用途造成损失,和本博客无关 目录 python+appium爬取微信运动数据,并 ...
- python定时天气预报(微信提醒)(部署到云服务器)
python定时天气预报(微信提醒)(部署到云服务器) 声明:仅供技术交流,请勿用于非法用途,如有其它非法用途造成损失,和本博客无关 目录 python定时天气预报(微信提醒)(部署到云服务器) 一. ...
- 【Python|第39期】监听目录取消文件只读属性
日期:2023年7月17日 作者:Commas 签名:(ง •_•)ง 积跬步以致千里,积小流以成江海-- 注释:如果您觉得有所帮助,帮忙点个赞,也可以关注我,我们一起成长:如果有不对的地方,还望各位 ...
- python json文件_python读写json文件的简单实现
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族 ...
最新文章
- CVPR目标检测与实例分割算法解析:FCOS(2019),Mask R-CNN(2019),PolarMask(2020)
- Robocopy是微软Windows Server 2003资源工具包中众多多用途的实用程序之一(它是基于强大的拷贝程序...
- 网络推广——企业新站还得是专业网络推广公司来维护!
- matlabrobert锐化_Matlab图像处理—锐化滤波器
- C语言将向量中的所有0移至末尾(附完整源码)
- MQ(Message Queue)简介
- c++数据结构与算法 图
- 蓝桥杯2018年第九届C/C++省赛B组第一题-第几天
- 434.字符串中的单词数
- FactorBook:人和小鼠转录因子chip_seq数据库
- C++ 遍历json文件
- LOL各大服务器所在位置,LOL各大服务器所在地,8个大区全都在广东,是其他省的两倍...
- html5 楼盘效果图,楼盘效果图图集
- 梯形图转化c语言,PLC梯形图转换成STL程序
- python画狗的代码_简单的Python代码能狗实现哪些丧心病狂的功能
- 百度云生态分享日| 网络技术及应用主题沙龙圆满落幕
- python每个数都可由集合中的某两个数相加而得
- Intent.createChooser方法源码解析(按我的解析,只有一个Intent是不会启动的??Android源码7.1.2)
- pandas 索引去重_python中pandas.DataFrame的简单操作方法(创建、索引、增添与删除) 如何更新pandas dataframe的值...
- 怎么在php中设置收藏按钮,如何在ecshop首页给商品加入立即购买与收藏按钮