利用Python批量提取Win10锁屏壁纸实战教程


Posted in Python onMarch 27, 2018

前言

相信使用Win10的朋友会发现,每次开机锁屏界面都会有不一样的漂亮图片,这些图片通常选自优秀的摄影作品,十分精美。

利用Python批量提取Win10锁屏壁纸实战教程

但是由于系统会自动更换这些图片,所以就算再好看的图片,也许下次开机之后就被替换掉了。

借助Python,我们可以用简单的几行代码,批量提取这些精美的锁屏图片。把喜欢的图片设置成桌面背景,就不用担心被替换掉啦。

下面话不多说了,来一起看看详细的介绍吧。

提取原理

Win10系统会自动下载最新的锁屏壁纸,并将他们保存在一个系统文件夹中,路径是C:\Users\[用户名]\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalState\Assets

利用Python批量提取Win10锁屏壁纸实战教程

直接打开这个文件夹,里面会有随机命名的多个文件,每一个文件就是一张图片。但是由于文件没有扩展名,所以并不能预览。为了不搞坏系统文件,并且把这些文件变成可以预览的格式,我们用Python把这些文件复制出来,加上JPG作为扩展名。

实现代码

import os, shutil
from datetime import datetime
# 把这个文件所在目录wallpapers文件夹作为保存图片的目录
save_folder = dir_path = os.path.dirname(
 os.path.realpath(__file__)) + '\wallpapers'
# 动态获取系统存放锁屏图片的位置
wallpaper_folder = os.getenv('LOCALAPPDATA') + (
 '\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy'
 '\LocalState\Assets')
# 列出所有的文件
wallpapers = os.listdir(wallpaper_folder)
for wallpaper in wallpapers:
 wallpaper_path = os.path.join(wallpaper_folder, wallpaper)
 # 小于150kb的不是锁屏图片
 if (os.path.getsize(wallpaper_path) / 1024) < 150:
 continue
 wallpaper_name = wallpaper + '.jpg'
 save_path = os.path.join(save_folder, wallpaper_name)
 shutil.copyfile(wallpaper_path, save_path)
 print('Save wallpaper ' + save_path)

首先确定系统存放锁屏图片的文件夹位置,由于文件夹位于用户的个人文件夹内,每个用户的用户名是不一样的,所以我们需要通过系统的LOCALAPPDATA变量动态的获取路径。代码会把提取出来的图片保存在wallpapers文件夹下,所以代码文件所在的目录没有wallpapers文件夹,需要手工创建一个。

利用Python批量提取Win10锁屏壁纸实战教程

执行上面这段Python代码,再打开wallpapers文件夹,就可以看到提取出的锁屏图片了。

利用Python批量提取Win10锁屏壁纸实战教程

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
开源软件包和环境管理系统Anaconda的安装使用
Sep 04 Python
python+matplotlib演示电偶极子实例代码
Jan 12 Python
python抓取网页中链接的静态图片
Jan 29 Python
python实现在IDLE中输入多行的方法
Apr 19 Python
Python学习_几种存取xls/xlsx文件的方法总结
May 03 Python
Python中pandas模块DataFrame创建方法示例
Jun 20 Python
Python数据抓取爬虫代理防封IP方法
Dec 23 Python
pyshp创建shp点文件的方法
Dec 31 Python
深入了解和应用Python 装饰器 @decorator
Apr 02 Python
Python2.7版os.path.isdir中文路径返回false的解决方法
Jun 21 Python
Python实现i人事自动打卡的示例代码
Jan 09 Python
Python超简单容易上手的画图工具库推荐
May 10 Python
Django学习笔记之ORM基础教程
Mar 27 #Python
Python使用xlwt模块操作Excel的方法详解
Mar 27 #Python
Python安装图文教程 Pycharm安装教程
Mar 27 #Python
python 接口返回的json字符串实例
Mar 27 #Python
使用Django和Python创建Json response的方法
Mar 26 #Python
python查询mysql,返回json的实例
Mar 26 #Python
Python发送http请求解析返回json的实例
Mar 26 #Python
You might like
PHP实现图片旋转效果实例代码
2014/10/01 PHP
微信支付开发维权通知实例
2016/07/12 PHP
PHP自定义递归函数实现数组转JSON功能【支持GBK编码】
2018/07/17 PHP
详解PHP队列的实现
2019/03/14 PHP
Laravel5.1框架注册中间件的三种场景详解
2019/07/09 PHP
用javascript实现给出的盒子的序列是否可连为一矩型
2007/08/30 Javascript
Textbox控件注册回车事件及触发按钮提交事件具体实现
2013/03/04 Javascript
jQuery.fn和jQuery.prototype区别介绍
2013/10/05 Javascript
javascript实现简单计算器效果【推荐】
2016/04/19 Javascript
老生常谈 js中this的指向
2016/06/30 Javascript
详解Node.js实现301、302重定向服务
2017/04/07 Javascript
Vue网页html转换PDF(最低兼容ie10)的思路详解
2017/08/24 Javascript
zTree jQuery 树插件的使用(实例讲解)
2017/09/25 jQuery
微信小程序之多文件下载的简单封装示例
2018/01/29 Javascript
vue基于element-ui的三级CheckBox复选框功能的实现代码
2018/10/15 Javascript
vue项目强制清除页面缓存的例子
2019/11/06 Javascript
在vue中实现禁止屏幕滚动,禁止屏幕滑动
2020/07/22 Javascript
Antd中单个DatePicker限定时间输入范围操作
2020/10/29 Javascript
[59:08]DOTA2上海特级锦标赛C组小组赛#2 LGD VS Newbee第一局
2016/02/27 DOTA
Python实现的计数排序算法示例
2017/11/29 Python
python生成器,可迭代对象,迭代器区别和联系
2018/02/04 Python
Python代码块批量添加Tab缩进的方法
2018/06/25 Python
python opencv鼠标事件实现画框圈定目标获取坐标信息
2020/04/18 Python
Napapijri西班牙在线商店:夹克、外套、运动衫等
2020/11/05 全球购物
药物学专业学生的自我评价
2013/10/27 职场文书
公务员职业生涯规划书范文  
2014/01/19 职场文书
给老婆的婚前保证书
2014/02/01 职场文书
学雷锋树新风演讲稿
2014/05/10 职场文书
缅怀先烈演讲稿
2014/09/03 职场文书
个人党性分析材料
2014/12/19 职场文书
学校计划生育责任书
2015/05/09 职场文书
军事博物馆观后感
2015/06/05 职场文书
电影雨中的树观后感
2015/06/15 职场文书
科级干部培训心得体会
2016/01/06 职场文书
python如何获取网络数据
2021/04/11 Python
利用Python实现模拟登录知乎
2022/05/25 Python