获取Windows10缓存的图片

python

  • Read me
    • 要求:系统已安装Python3.6
    • 使用:将下面的代码放入文本文档并重命名文件为“pic.py”,直接双击执行pic.py文件
    • 结果:在当前目录下的pic目录中获得Windows10缓存图片
  • 源码
import getpass
import os
import shutil
from PIL import Image

# 获取当前用户的用户名
user = getpass.getuser()

# 获取Windows10中的随机路径“Microsoft.Windows.ContentDeliveryManager_...”
temp_dir = "C:\\Users\\"+ user + "\\AppData\\Local\\Packages\\"

# 每个系统都可能不一样的目录
rand_dir = "Microsoft.Windows.ContentDeliveryManager_";
for root, dirs, files in os.walk(temp_dir):
    if rand_dir in root:
        temp_dir = root
        break

# 获取Windows10缓存图片目录
pic_dir = temp_dir + "\\LocalState\\Assets\\"

# 获取当前目录
cur_dir = os.getcwd() + "\\"

# 需要拷贝到的目录名称
copy_dir = "pic"

# 需要拷贝到的目录全路径
dest_dir = cur_dir + copy_dir + "\\"

# 如果目标目录不存在,则新建目录
if not os.path.exists(dest_dir):
    os.makedirs(dest_dir)


# 获取Windows10缓存图片文件名函数
def pic_name(file_dir):
    L = []
    for root, dirs, files in os.walk(file_dir):
        L.append(files)
    return L[0]


# 获取Windows10缓存图片文件名列表
pics = pic_name(pic_dir)

# 复制图片
for pic in pics:
    img = Image.open(pic_dir + pic)
    if img.width == 1920 or img.width == 1080:
        shutil.copyfile(pic_dir + pic, dest_dir + pic + ".jpg")


shell

  • Read me
    • 要求:系统已安装Git
    • 使用:将下面的代码放入文本文档并重命名文件为“pic.sh”,直接双击执行pic.sh文件
    • 结果:在当前目录下的pic目录中获得Windows10缓存图片
  • 源码
#!/bin/sh

# 获取当前目录
nowDir=`pwd`;

# 指定图片存放的目录
des="${nowDir}/pic/";

# 如果指定的目录不存在,则创建
if [ ! -d $des ];then
    mkdir $des;
fi

# 获取当前用户
user=`whoami`;

# Windows10缓存的图片所在的目录
picSource="/c/Users/${user}/AppData/Local/Packages/Microsoft.Windows.ContentDeliveryManager_*/LocalState/Assets";

# echo ${picSource};
# exit;

# 进入Windows10缓存的图片目录下
cd $picSource;

# 获取大小超过100K的文件,并在每个文件末尾添加“.jpg”扩展
function getAllFiles()  
{  
        pics=`ls $picSource`;  
        bisicSize=102400;
        for pic in $pics;
        do  
           #if test -f $fileName; then  
           if [ -f $pic ];then  
              size=`stat -c "%s" ${pic}`;  
              if [ $size -gt $bisicSize ];then
                # echo $pic;
                cp $pic "${des}${pic}.jpg";
              fi
              # exit;
              #echo "${des}${pic}.jpg";
              #cp $pic "${des}${pic}.jpg";
           else  
              echo "$picSource is a invalid path";  
           fi  
        done  
} 

# 执行方法
getAllFiles;  

# 运行结束
echo "DONE";

转载于:https://www.cnblogs.com/freelancy/p/7918708.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值