使用Python腳本將Bing的每日?qǐng)D片作為桌面的教程
微軟最近出了個(gè) 必應(yīng)bing 繽紛桌面,使用下來還是不錯(cuò),可以每天更換Bing首頁的北京作為壁紙,但是該軟件有個(gè)不好的地方是,安裝后桌面上會(huì)有一個(gè)搜索框出現(xiàn),很是煩人,而且不能關(guān)掉。于是出于技術(shù)考慮,想到了使用Python來實(shí)現(xiàn)這個(gè)功能。
正如很多介紹Python書中那樣,Python是中膠水語言,用在哪里都是可行的。想要使用Python給桌面設(shè)置背景只需要下個(gè)模塊安裝即可:
http://sourceforge.net/projects/pywin32/
代碼非常簡(jiǎn)單,參考了網(wǎng)上一些其他人寫了代碼,具體代碼如下:
# -*- coding: utf-8 -*-
import urllib,time,os,Image,win32gui,win32con,win32api
class StealBing:
def __init__(self):
self.content = urllib.urlopen('http://cn.bing.com/').read()
self.bgImageUrl = ''
self.localFileName = ''
self.localBMPFileName = ''
def parserImageURL(self):
tempStr = self.content[self.content.index('g_img={url:')+12:]
self.bgImageUrl = tempStr[:tempStr.index('id:\'bgDiv\'')-2]
def createLocalFileName(self):
randomStr = time.strftime("%Y%m%d", time.localtime())
self.localFileName = 'D:/Bing/' + randomStr + '.jpg'
self.localBMPFileName = 'D:/Bing/' + randomStr + '.bmp'
def downloadImage(self):
if self.bgImageUrl == '':
self.parserImageURL()
if self.localFileName == '':
self.createLocalFileName()
urllib.urlretrieve(self.bgImageUrl, self.localFileName)
def updateBGImage(self):
img = Image.open(self.localFileName)
img.save(self.localBMPFileName)
os.remove(self.localFileName)
k = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER,"Control Panel\\Desktop",0,win32con.KEY_SET_VALUE)
win32api.RegSetValueEx(k, "WallpaperStyle", 0, win32con.REG_SZ, "2") #2拉伸適應(yīng)桌面,0桌面居中
win32api.RegSetValueEx(k, "TileWallpaper", 0, win32con.REG_SZ, "0")
win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER, self.localBMPFileName , 1+2)
if __name__ == '__main__':
stealBing = StealBing()
stealBing.downloadImage()
stealBing.updateBGImage()
相關(guān)文章
Python concurrent.futures模塊使用實(shí)例
這篇文章主要介紹了Python concurrent.futures模塊使用實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12
python GUI庫圖形界面開發(fā)之PyQt5下拉列表框控件QComboBox詳細(xì)使用方法與實(shí)例
這篇文章主要介紹了python GUI庫圖形界面開發(fā)之PyQt5下拉列表框控件QComboBox詳細(xì)使用方法與實(shí)例,需要的朋友可以參考下2020-02-02
Python實(shí)現(xiàn)棧和隊(duì)列的簡(jiǎn)單操作方法示例
這篇文章主要介紹了Python實(shí)現(xiàn)棧和隊(duì)列的簡(jiǎn)單操作方法,結(jié)合實(shí)例形式詳細(xì)分析了Python棧和隊(duì)列的原理與簡(jiǎn)單實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-11-11
python機(jī)器學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)(一)
這篇文章主要為大家詳細(xì)介紹了python機(jī)器學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)第一篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-12-12
Pandas Shift函數(shù)的基礎(chǔ)入門學(xué)習(xí)筆記
shift函數(shù)是對(duì)數(shù)據(jù)進(jìn)行移動(dòng)的操作,下面這篇文章主要給大家介紹了關(guān)于Pandas Shift函數(shù)的基礎(chǔ)入門學(xué)習(xí)筆記,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-11-11
使用Python paramiko模塊利用多線程實(shí)現(xiàn)ssh并發(fā)執(zhí)行操作
ssh是一個(gè)協(xié)議,OpenSSH是其中一個(gè)開源實(shí)現(xiàn),paramiko是Python的一個(gè)庫,實(shí)現(xiàn)了SSHv2協(xié)議(底層使用cryptography)。這篇文章主要介紹了使用Python paramiko模塊利用多線程實(shí)現(xiàn)ssh并發(fā)執(zhí)行操作,需要的朋友可以參考下2019-12-12

