python获取图片 切换windows桌面

注:本脚本程序copy自https://blog.csdn.net/icevmj/article/details/78890552 

+

代码参考:https://github.com/qinyuanpei/WallPaper/blob/master/main.py

                                                    若侵权联系删

中途遇到win32模块加载不到最后发现下载的win32文件和python位数不一致(我的是64位)

下载地址参考:https://sourceforge.net/projects/pywin32/files/pywin32/Build%20221/

百度云下载:

链接:https://pan.baidu.com/s/1hAJmdONH3EnnIQpF9x_WKg 
提取码:2s2r 
复制这段内容后打开百度网盘手机App,操作更方便哦

首先确保电脑安装了python,并且安装了requests模块,安装方法自行必应(python3默认安装了pip,这时只需在cmd中pip install requests即可安装requests)。

代码如下:

# -*- coding: UTF-8 -*- 
import urllib
import requests         
import os.path
import ctypes
import json
import win32gui,win32con,win32api

def save_img(img_url,dirname):
    #保存图片到磁盘文件夹dirname中
    try:
        if not os.path.exists(dirname):
            print ('文件夹',dirname,'不存在,重新建立')
            #os.mkdir(dirname)
            os.makedirs(dirname)
        #获得图片文件名,包括后缀
        basename = "bingImage.jpg"
        #拼接目录与文件名,得到图片路径
        filepath = os.path.join(dirname, basename)
        #下载图片,并保存到文件夹中
        urllib.urlretrieve(img_url,filepath)
    except IOError as e:
        print ('文件操作失败',e)
    except Exception as e:
        print ('错误 :',e)
    print("Save", filepath, "successfully!")

    return filepath

# 请求网页,跳转到最终 img 地址
def get_img_url():
	#参考使用的bing官网的背景图 可自由改自己喜欢的 
    raw_img_url = "https://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1"
    url=urllib.urlopen(raw_img_url)
    for d in url:
        info=json.loads(d)  
    img_url="https://cn.bing.com"+info['images'][0]['url']  
    return img_url
    # quit()
# 设置图片绝对路径 filepath 所指向的图片为壁纸
def set_img_as_wallpaper(filePath):
    win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER, filePath, 0)#win32con.SPI_SETDESKWALLPAPER=20
    print('成功应用图片:%s为桌面壁纸'  % filePath)

def main():
    dirname = "D:\\img"  # 图片要被保存在的位置(修改为自己的本地路径)
    img_url = get_img_url()
    filepath = save_img(img_url, dirname)   # 图片文件的的路径
    set_img_as_wallpaper(filepath)

main()

自动切换桌面 

  • 其中你只需更改保存位置。
    注:本脚本程序copy自https://blog.csdn.net/icevmj/article/details/78890552若侵权联系删

  • 在python脚本的同一目录下创建名为Py_BingImg.bat的批处理文件,批处理内容如下:

@echo offdel g:\bingImg\*.jpg
python SetBingImgAsWallpaper.py
  • 第二行在运行python脚本前先删除前一天下载的必应图片,这样就实现了旧壁纸的每日清理,最大限度节省了存储空间。第三行为运行上面的python脚本。

  • 如何实现壁纸的自动切换呢,这里采用开机运行上面的批处理程序的方法。
    复制上面创建的批处理文件,到C:\User\yourname\AppData\Roaming\Microsoft\Windows\开始菜单\程序\启动目录下,右键-粘贴为快捷方式。这样就实现了开机启动批处理程序,自动清除和更新壁纸。
    (每次开机都执行一遍更换壁纸的操作还不够完美,可以用Windows任务计划程序来添加任务,设置每天指定时间点运行批处理程序)

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值