Python实用案例,Python脚本,Python实现每日更换“必应图片”为“桌面壁纸”

往期回顾 Python实现自动监测Github项目并打开网页
Python实现文件自动归类
Python实现帮你选择双色球号码
前言: 今天我们就利用python脚本实现每日更换“必应图片”为“桌面壁纸”。直接开整~
效果展示 Python实用案例,Python脚本,Python实现每日更换“必应图片”为“桌面壁纸”
文章图片

思路整理 1、通过网页,获取图片地址
2、保存图片到绝对路径
3、设置该绝对路径所指向的图片为壁纸
4、批处理壁纸自动切换
需要用到的模块如下:

import urllib.request import requests import os.path import ctypes

第一、获取图片地址 这个函数主要通过requests模块,根据必应的网页地址,获取到当日图片的最终img地址。
# 请求网页,跳转到最终 img 地址 def get_img_url(raw_img_url="https://area.sinaapp.com/bingImg/"): r = requests.get(raw_img_url) img_url = r.url# 得到图片文件的网址 print('img_url:', img_url) return img_url

第二、保存图片到本地 这个函数的作用就是把图片保存到你自己设置的一个目录下,并返回当前目录的绝对地址。
def save_img(img_url, dirname): # 保存图片到磁盘文件夹dirname中 try: if not os.path.exists(dirname): print('文件夹', dirname, '不存在,重新建立') # os.mkdir(dirname) os.makedirs(dirname) # 获得图片文件名,包括后缀 basename = "bing.jpg" # 拼接目录与文件名,得到图片路径 filepath = os.path.join(dirname, basename) # 下载图片,并保存到文件夹中 urllib.request.urlretrieve(img_url, filepath) except IOError as e: print('文件操作失败', e) except Exception as e: print('错误 :', e) print("Save", filepath, "successfully!")return filepath

第三、设置该绝对路径所指向的图片为壁纸 通过之前获得的图片所在的绝对路径,把该图片设置为桌面壁纸。
def set_img_as_wallpaper(filepath): ctypes.windll.user32.SystemParametersInfoW(20, 0, filepath, 0)

第四、运行代码的main函数
def main(): dirname = "D:\\bingImg"# 图片要被保存在的位置 img_url = get_img_url() filepath = save_img(img_url, dirname)# 图片文件的路径 set_img_as_wallpaper(filepath)

运行效果(此时,可以回看一下文章首图中的左上角那张图片)Python实用案例,Python脚本,Python实现每日更换“必应图片”为“桌面壁纸”
文章图片

第五、批处理自动更换壁纸 此时,可以在python脚本的同一目录下创建名为py_bingying.bat的批处理文件,批处理内容如下:
@echo off del g:\bingImg\*.jpg python SetBingImgAsWallpaper.py

第二行在运行python脚本前先删除前一天下载的必应图片,这样就实现了旧壁纸的每日清理,最大限度节省了存储空间。第三行为运行上面的python脚本。
如何实现壁纸的自动切换呢,这里采用开机运行上面的批处理程序的方法。
复制上面创建的批处理文件,到下方目录下,右键-粘贴为快捷方式。这样就实现了开机启动批处理程序,自动清除和更新壁纸。
C:\User\yourname\AppData\Roaming\Microsoft\Windows\开始菜单\程序\启动每次开机都执行一遍更换壁纸的操作还不够完美的话,可以用Windows任务计划程序来添加任务,设置每天指定时间点运行批处理程序。
文章到这里就结束了,感谢你的观看,Python实用脚本系列,下篇文章分享Python 批量加水印
为了感谢读者们,我想把我最近收藏的一些编程干货分享给大家,回馈每一个读者,希望能帮到你们。
干货主要有:
① 2000多本Python电子书(主流和经典的书籍应该都有了)
【Python实用案例,Python脚本,Python实现每日更换“必应图片”为“桌面壁纸”】② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)
⑥ 两天的Python爬虫训练营直播权限
All done~详见个人简介或者私信获取完整源代码。。

    推荐阅读