Python_必应每日壁纸更换
因为必应搜索每天会更换一张壁纸,于是决定每天下载一张壁纸来进行更换
目前只能下载到本地,还不能更改壁纸
环境:
python3 + image + urllib
- 获取必应搜索的内容,解析出里面的背景图片地址
url(/az/hprichbg/rb/LaGrandeNomade_ZH-CN10098798714_1920x1080.jpg)
# 连接网络,返回数据
def connect_Net(strUrl) :
request = urllib.request.Request(strUrl)
response = urllib.request.urlopen(request)
data = response.read()
return data
# :url(/az/hprichbg/rb/LaGrandeNomade_ZH-CN10098798714_1920x1080.jpg)
# 获取每日图片的url
def get_DailyPicUrl(data) :
pattern = r'(/az/[^s]*?jpg)'
picUrl = re.findall(pattern, data);
# print(picUrl[0])
return picUrl[0];
- 根据图片的url下载图片到本地
# 下载每日图片
#http://cn.bing.com/az/hprichbg/rb/GreatSaltLake_ZH-CN12553220159_1920x1080.jpg
def download_DailyPic(picUrl) :
# 拼接
picUrl = 'http://cn.bing.com' + picUrl
picData = connect_Net(picUrl)
# 截取名字
picList = str(picUrl).split('/')
picName = picList[len(picList) - 1]
# 保存到本地
with open(picName, 'wb') as f:
f.write(picData)
print(picName)
return picName
- 完整代码
import urllib.request
import re
from PIL import Image
# import win32gui
# import win32con
import win32api
#from HttpWrapper import SendRequest
# 连接网络
def connect_Net(strUrl) :
request = urllib.request.Request(strUrl)
response = urllib.request.urlopen(request)
data = response.read()
return data
# :url(/az/hprichbg/rb/LaGrandeNomade_ZH-CN10098798714_1920x1080.jpg)
# 获取每日图片的url
def get_DailyPicUrl(data) :
pattern = r'(/az/[^s]*?jpg)'
picUrl = re.findall(pattern, data);
# print(picUrl[0])
return picUrl[0];
# 下载每日图片
#http://cn.bing.com/az/hprichbg/rb/GreatSaltLake_ZH-CN12553220159_1920x1080.jpg
def download_DailyPic(picUrl) :
# 拼接
picUrl = 'http://cn.bing.com' + picUrl
picData = connect_Net(picUrl)
# 截取名字
picList = str(picUrl).split('/')
picName = picList[len(picList) - 1]
# 保存到本地
with open(picName, 'wb') as f:
f.write(picData)
print(picName)
return picName
if __name__ == '__main__' :
data = connect_Net('http://cn.bing.com/?mkt=zh-CN')
picUrl = get_DailyPicUrl(data.decode('utf-8'))
picName = download_DailyPic(picUrl)
问题: 不能导入win32gui?
win32gui在pywin32中,所以可以去pywin32下载对应版本即可。