使用python脚本每天更换必应图片为桌面壁纸,这对于许多学生来说是一个非常实用的功能。必应每天都会推出新的壁纸,这些壁纸不仅美丽,而且有时还会根据不同地区的特色进行定制。
那么,如何让你的电脑每天自动更新必应的每日图片作为桌面背景呢?
以下是使用Python脚本获取必应每日图片并实现桌面壁纸自动切换的方法。
思路整理:
从网页中获取图片地址将图片保存到指定的绝对路径将该路径的图片设置为桌面壁纸使用批处理实现壁纸的自动切换
需要用到的Python模块如下:
立即学习“Python免费学习笔记(深入)”;
import urllib.requestimport requestsimport os.pathimport ctypes
第一步:获取图片地址
此函数主要通过requests模块,从必应的网页地址获取当日图片的最终URL。
# 请求网页,获取最终图片URLdef get_img_url(raw_img_url="https://area.sinaapp.com/bingImg/"): r = requests.get(raw_img_url) img_url = r.url # 获取图片文件的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.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("保存", filepath, "成功!") 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)
运行效果可以参考文章首图中的左上角那张图片。
壁纸样机神器
免费壁纸样机生成
0 查看详情

第五步:批处理自动更换壁纸
在Python脚本的同一目录下创建名为
py_bingying.bat
的批处理文件,内容如下:
@echo offdel g:ingImg*.jpgpython SetBingImgAsWallpaper.py
第二行在运行Python脚本前先删除前一天的必应图片,以实现旧壁纸的每日清理,最大限度节省存储空间。第三行运行上面的Python脚本。
为了实现壁纸的自动切换,可以将批处理文件复制到以下目录,并创建快捷方式,实现开机自动运行:
C:UseryournameAppDataRoamingMicrosoftWindows开始菜单程序启动
如果需要更精细的控制,可以使用Windows任务计划程序,设置每天在特定时间运行批处理程序。
获取完整源码,链接如下:
必应壁纸自动更新:
链接:https://pan.baidu.com/s/16GsSbfyLICRvX3o2OnkjkA
提取码:7×48
-END-
以上就是用python每日更换“必应图片”为“桌面壁纸”的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/405357.html
微信扫一扫
支付宝扫一扫