首頁 > 後端開發 > Python教學 > Python如何批量提取Win10鎖定螢幕壁紙

Python如何批量提取Win10鎖定螢幕壁紙

小云云
發布: 2018-03-29 13:10:39
原創
2497 人瀏覽過

本文主要為大家介紹了關於利用Python批量提取Win10鎖定螢幕壁紙的相關資料,文中透過範例程式碼介紹的非常詳細,希望能幫助大家。

前言

相信使用Win10的朋友會發現,每次開機鎖定螢幕介面都會有不同的漂亮圖片,這些圖片通常選自優秀的攝影作品,十分精美。

但由於系統會自動更換這些圖片,所以就算再好看的圖片,也許下次開機之後就被替換掉了。

借助Python,我們可以用簡單的幾行程式碼,批次擷取這些精美的鎖定畫面圖片。把喜歡的圖片設定成桌面背景,就不用擔心被替換掉囉。

下面話不多說了,來一起看看詳細的介紹吧。

提取原理

Win10系統會自動下載最新的鎖定螢幕壁紙,並將他們保存在一個系統資料夾中,路徑是C:\Users\[使用者名稱]\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\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_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 + &#39;.jpg&#39;
 save_path = os.path.join(save_folder, wallpaper_name)
 shutil.copyfile(wallpaper_path, save_path)
 print(&#39;Save wallpaper &#39; + save_path)
登入後複製

首先確定係統存放鎖定畫面圖片的資料夾位置,由於資料夾位於使用者的個人資料夾內,每個使用者的使用者名稱是不一樣的,所以我們需要透過系統的LOCALAPPDATA變數動態的取得路徑。程式碼會把提取出來的圖片保存在wallpapers資料夾下,所以程式碼檔案所在的目錄沒有wallpapers資料夾,需要手工建立一個。

執行上面這段Python程式碼,再開啟wallpapers資料夾,就可以看到擷取的鎖定畫面圖片了。

相關推薦:

python批次擷取word內資訊

##

以上是Python如何批量提取Win10鎖定螢幕壁紙的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板