重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
前言
成都创新互联长期为上1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为阳高企业提供专业的做网站、成都网站建设,阳高网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。相信使用Win10的朋友会发现,每次开机锁屏界面都会有不一样的漂亮图片,这些图片通常选自优秀的摄影作品,十分精美。
但是由于系统会自动更换这些图片,所以就算再好看的图片,也许下次开机之后就被替换掉了。
借助Python,我们可以用简单的几行代码,批量提取这些精美的锁屏图片。把喜欢的图片设置成桌面背景,就不用担心被替换掉啦。
下面话不多说了,来一起看看详细的介绍吧。
提取原理
Win10系统会自动下载最新的锁屏壁纸,并将他们保存在一个系统文件夹中,路径是C:\Users\[用户名]\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h3txyewy\LocalState\Assets
直接打开这个文件夹,里面会有随机命名的多个文件,每一个文件就是一张图片。但是由于文件没有扩展名,所以并不能预览。为了不搞坏系统文件,并且把这些文件变成可以预览的格式,我们用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_cw5n1h3txyewy' '\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)