利用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 相关文章推荐
Linux下为不同版本python安装第三方库
Aug 31 Python
利用Python破解斗地主残局详解
Jun 30 Python
pyshp创建shp点文件的方法
Dec 31 Python
实例详解Matlab 与 Python 的区别
Apr 26 Python
Python中的字符串切片(截取字符串)的详解
May 15 Python
Python 实现Numpy中找出array中最大值所对应的行和列
Nov 26 Python
Python进程Multiprocessing模块原理解析
Feb 28 Python
Python3.7.0 Shell添加清屏快捷键的实现示例
Mar 23 Python
Jupyter notebook如何修改平台字体
May 13 Python
python与c语言的语法有哪些不一样的
Sep 13 Python
python 定义函数 返回值只取其中一个的实现
May 21 Python
Python实现日志实时监测的示例详解
Apr 06 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
把从SQL中取出的数据转化成XMl格式
2006/10/09 PHP
用php将任何格式视频转为flv的代码
2009/09/03 PHP
数组与类使用PHP的可变变量名需要的注意的问题
2013/06/20 PHP
php操作mysqli(示例代码)
2013/10/28 PHP
Windows Server 2008 R2和2012中PHP连接MySQL过慢的解决方法
2016/07/02 PHP
PHP过滤器 filter_has_var() 函数用法实例分析
2020/04/23 PHP
学习YUI.Ext 第六天--关于树TreePanel(Part 2异步获取节点)
2007/03/10 Javascript
JavaScript面向对象之静态与非静态类
2010/02/03 Javascript
Visual Studio中的jQuery智能提示设置方法
2010/03/27 Javascript
Javascript Web Slider 焦点图示例源码
2013/10/10 Javascript
JavaScript实现维吉尼亚(Vigenere)密码算法实例
2013/11/22 Javascript
动态的绑定事件addEventListener方法的使用
2014/01/24 Javascript
深入理解Javascript中this的作用域
2014/08/12 Javascript
js中iframe调用父页面的方法
2014/10/30 Javascript
学习javascript文件加载优化
2016/02/19 Javascript
js判断某个字符出现的次数的简单实例
2016/06/03 Javascript
Vue.js实现在下拉列表区域外点击即可关闭下拉列表的功能(自定义下拉列表)
2017/05/30 Javascript
vue2 全局变量的设置方法
2018/03/09 Javascript
JS实现导出Excel的五种方法详解【附源码下载】
2018/03/15 Javascript
快速解决vue-cli在ie9+中无效的问题
2018/09/04 Javascript
JS call()及apply()方法使用实例汇总
2020/07/11 Javascript
[16:56]heroes英雄教学 司夜刺客
2014/09/18 DOTA
Python 爬虫学习笔记之单线程爬虫
2016/09/21 Python
Python升级导致yum、pip报错的解决方法
2017/09/06 Python
python随机数分布random测试
2018/08/27 Python
python K近邻算法的kd树实现
2018/09/06 Python
python opencv 实现读取、显示、写入图像的方法
2020/06/08 Python
python调用百度AI接口实现人流量统计
2021/02/03 Python
给幼儿园老师的表扬信
2014/01/19 职场文书
三年大学生活自我鉴定
2014/01/21 职场文书
表决心的诗句大全
2014/03/11 职场文书
学校招生宣传广告词
2014/03/19 职场文书
工厂见习报告范文
2014/10/31 职场文书
关于五一放假的通知
2015/08/18 职场文书
2016形势与政策学习心得体会
2016/01/12 职场文书
python unittest单元测试的步骤分析
2021/08/02 Python