微信的文件管理非常糟糕,不论是聊天中的自动接收的附件、视频、图片,还是手动保存的文件,都保存在一个文件夹内。不仅占据大量手机存储,而且成千上万的小文件夹在一个文件夹内,不仅查找、管理困难,甚至列个目录都极慢。

对于占据手机存储的问题,我采用同步后删除的方式,每天将微信的附件、视频、图片等全部复制到家庭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按日期将微信文件移动到月份文件夹内相关推荐

  1. python按日期排序_python按修改时间顺序排列文件的实例代码

    python按修改时间顺序排列文件,具体代码如下所示: import os def sort_file_by_time(file_path): files = os.listdir(file_path ...

  2. Python脚本定时发送微信文件

    背景:朋友让我改一个文件,可我改完已经半夜了.这时候如果微信发给朋友恐会打扰他休息.于是决定用Python写一个自动发送微信信息的脚本,第二天早上自动发送. 任务简述:使用Python自动化程序,把f ...

  3. Python最新操作微信解决方案(附破解文件和代码)

    本文我将给大家讲解微信机器人的制作,首先要跟大家说的就是:机器人不管是 QQ 机器人还是微信机器人,相对而言是比较灰色地带,本文中提供的几种方式,经过本人亲自测试,是很好用的!如果有需要,赶紧看看,这 ...

  4. python socket传输图片_python使用socket传输图片视频等文件的实现方式

    python使用socket传输图片视频等文件的实现方式 来源:中文源码网    浏览: 次    日期:2019年11月5日 [下载文档:  python使用socket传输图片视频等文件的实现方式 ...

  5. Python爬虫爬取微信朋友圈的方法,感兴趣的朋友可以了解下

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 小雨 | 作者 python教程 | 来源 接下来,我们将实现微信朋友圈的 ...

  6. python+appium爬取微信运动数据,并分析好友的日常步数情况

    python+appium爬取微信运动数据,并分析好友的日常步数情况 声明:仅供技术交流,请勿用于非法用途,如有其它非法用途造成损失,和本博客无关 目录 python+appium爬取微信运动数据,并 ...

  7. python定时天气预报(微信提醒)(部署到云服务器)

    python定时天气预报(微信提醒)(部署到云服务器) 声明:仅供技术交流,请勿用于非法用途,如有其它非法用途造成损失,和本博客无关 目录 python定时天气预报(微信提醒)(部署到云服务器) 一. ...

  8. 【Python|第39期】监听目录取消文件只读属性

    日期:2023年7月17日 作者:Commas 签名:(ง •_•)ง 积跬步以致千里,积小流以成江海-- 注释:如果您觉得有所帮助,帮忙点个赞,也可以关注我,我们一起成长:如果有不对的地方,还望各位 ...

  9. python json文件_python读写json文件的简单实现

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族 ...

最新文章

  1. CVPR目标检测与实例分割算法解析:FCOS(2019),Mask R-CNN(2019),PolarMask(2020)
  2. Robocopy是微软Windows Server 2003资源工具包中众多多用途的实用程序之一(它是基于强大的拷贝程序...
  3. 网络推广——企业新站还得是专业网络推广公司来维护!
  4. matlabrobert锐化_Matlab图像处理—锐化滤波器
  5. C语言将向量中的所有0移至末尾(附完整源码)
  6. MQ(Message Queue)简介
  7. c++数据结构与算法 图
  8. 蓝桥杯2018年第九届C/C++省赛B组第一题-第几天
  9. 434.字符串中的单词数
  10. FactorBook:人和小鼠转录因子chip_seq数据库
  11. C++ 遍历json文件
  12. LOL各大服务器所在位置,LOL各大服务器所在地,8个大区全都在广东,是其他省的两倍...
  13. html5 楼盘效果图,楼盘效果图图集
  14. 梯形图转化c语言,PLC梯形图转换成STL程序
  15. python画狗的代码_简单的Python代码能狗实现哪些丧心病狂的功能
  16. 百度云生态分享日| 网络技术及应用主题沙龙圆满落幕
  17. python每个数都可由集合中的某两个数相加而得
  18. Intent.createChooser方法源码解析(按我的解析,只有一个Intent是不会启动的??Android源码7.1.2)
  19. pandas 索引去重_python中pandas.DataFrame的简单操作方法(创建、索引、增添与删除) 如何更新pandas dataframe的值...
  20. 怎么在php中设置收藏按钮,如何在ecshop首页给商品加入立即购买与收藏按钮

热门文章

  1. MySQL重置密码(适用Windows)
  2. 验证码输入错误怎么再次刷新验证码
  3. 基于NLP的互联网情感分析与预警
  4. 北京车牌那么难摇为什么还能那么受欢迎?
  5. Python项目实战:数据可视化与股票数据分析-关东升-专题视频课程
  6. 2021计算机一级新增知识点,2021年全国计算机等级考试改革有哪些内容
  7. C语言实现字符串对应替换
  8. Centos查看端口及防火墙
  9. 刷脸支付设备深度融合多项赋能
  10. 产品随记-无埋点数据采集