[Python] 抓取必应每日一图,设置为桌面壁纸

来源:互联网 发布:云尚数据 编辑:程序博客网 时间:2024/05/17 02:20

在Windows 10 64位系统环境下,使用 Python 3.6 进行图片抓取和设置壁纸操作。
其中,图片链接 https://area.sinaapp.com/bingImg/ 为 Bing 每日一图的地址,解析可以获得图片文件的地址,下载即可。之后使用 ctypes 工具进行壁纸设置。颇为简单。结合 AHK (auto hot key) 可以用快捷按键的方式运行脚本更新壁纸。颇为方便。 :)

SetBingImgAsWallpaper.py

"""程序功能:抓取必应每日一图,设置为桌面壁纸"""import urllib.requestimport requests         import os.pathimport ctypesdef save_img(img_url,dirname):    #保存图片到磁盘文件夹dirname中    try:        if not os.path.exists(dirname):            print ('文件夹',dirname,'不存在,重新建立')            #os.mkdir(dirname)            os.makedirs(dirname)        #获得图片文件名,包括后缀        basename = os.path.basename(img_url)        #拼接目录与文件名,得到图片路径        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# 请求网页,跳转到最终 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# 设置图片绝对路径 filepath 所指向的图片为壁纸def set_img_as_wallpaper(filepath):    ctypes.windll.user32.SystemParametersInfoW(20, 0, filepath, 0)def main():    dirname = "E:\\Pictures\\bingImg"       # 图片要被保存在的位置    img_url = get_img_url()    filepath = save_img(img_url, dirname)   # 图片文件的的路径    set_img_as_wallpaper(filepath)main()

MyScript.ahk

;Ctrl + Alt + P 快捷键运行SetBingImgAsWallpaper.py脚本设置壁纸为Bing每日一图(需要在联网状态运行)^!P::Run python SetBingImgAsWallpaper.pyReturn

抓取的图片

阅读全文
'); })();
1 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 锦荼作品 荼糜 荼毗 荼杯头手机汉化版 水荼翎 荼大大作品 曼荼罗 荼杯头 花开荼靡 荼靡怎么读 若菜荼央中文字幕在线 若菜荼央中文字 山莓和覆盆子图片对比 山莓图片 覆盆子和树莓的区别 悬钩子 山菅 山葵 青芥末 芥末 山葵是芥末吗 芥末黄 香松 天津蓟州教育网 去西蔵必需品 600338西蔵珠峰股吧 西蔵民族大学什么级别 我要去西蔵歌曲 去西蔵旅行攻略 去西蔵必买的东西 我要去西蔵歌曲原唱 西蔵大学2018分数线 西蔵民族大学就业好吗 去西蔵注意事项 西蔵林芝自助旅游攻略 自驾西蔵旅游攻略 西蔵人力资源和社会保障厅 2个人自驾游西蔵多少钱 山蕉 山蕨