起因

多年前从某度换成bing作为日常搜索引擎。虽然搜索效果还差强人意,但bing的每日精选的壁纸的确是一大特色。当时就产生一个念头,如果能够一键下载并且设置它为本地桌面壁纸就好了。这里放上基于python requestsBeautifulSoup的两个包,实现如题所示功能的代码。

代码

import os
import requests
from bs4 import BeautifulSoup
import win32api,win32con,win32guidef download_bing_wallpaper(filepath):url = "https://cn.bing.com"try:r = requests.get(url)except:print("下载失败,请检查你的网络连接!")input("\n请按任意键退出:")exit()soup = BeautifulSoup(r.text,features="lxml")ls = soup.select("link")url_img = url+ls[0].attrs["href"] # 获取图片链接jj = ls[0].attrs["href"].split("&")j = jj[0].split("=")fname = j[1] # 获取图片文件名fjf = soup.select("#sh_cp")des = fjf[0].attrs["title"] # 获取图片描述with open(os.path.join(filepath,fname),"wb") as f:f.write(requests.get(url_img).content) # 保存图片print(fname)print(des)return os.path.join(filepath,fname)def set_wallpaper(filepath):"""适用于win10系统"""#打开指定注册表路径reg_key = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER,"Control Panel\\Desktop",0,win32con.KEY_SET_VALUE)#最后的参数:2拉伸,0居中,6适应,10填充,0平铺win32api.RegSetValueEx(reg_key, "WallpaperStyle", 0, win32con.REG_SZ, "2")#最后的参数:1表示平铺,拉伸居中等都是0win32api.RegSetValueEx(reg_key, "TileWallpaper", 0, win32con.REG_SZ, "0")#刷新桌面win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER,filepath, win32con.SPIF_SENDWININICHANGE)if __name__ == "__main__":subdir = os.path.join(os.path.expanduser("~/Pictures"),"Wallpaper") #放到wallpaper子文件夹中if not os.path.exists(subdir):os.mkdir(subdir)set_wallpaper(download_bing_wallpaper(filepath=subdir))input("\n桌面壁纸设置完成,请按任意键退出:")

说明

此代码基于python3.6,应该3版本都能运行。BeautifulSoup包需要安装,读者可以自行pip install。把代码拷贝保存为后缀"py"文件(如"每日壁纸.py"),双击即可运行。如果无法运行,可能是因为python没有设置成环境变量,这个操作请自行到网上搜索解决方案。

python实现一键下载Bing每日壁纸相关推荐

  1. No.5 下载 Bing 每日壁纸并设为桌面

    一.简介 网址:https://cn.bing.com/?scope=web&FORM=ANNTH1 效果:下载壁纸 使用框架:requests.win32gui.win32con.win32 ...

  2. macbook下载bing每日壁纸

    使用python语言实现,将下面代码保存为bing.py, 使用python bing.py来执行下面代码. #!/usr/bin/env python # -*- coding:utf-8 -*- ...

  3. 【Python爬虫学习实践】多线程爬取Bing每日壁纸

    在本节实践中,我们将借助Python多线程编程并采用生产者消费者模式来编写爬取Bing每日壁纸的爬虫.在正式编程前,我们还是一样地先来分析一下我们的需求及大体实现的过程. 总体设计预览 首先,我们先来 ...

  4. python批量下载必应每日壁纸

    文章目录 python批量下载必应每日壁纸 一.图片来源选择 二.python实现 python批量下载必应每日壁纸 必应搜索的每日背景壁纸都是高质量的图片,下载来当桌面壁纸再好不过了,微软官方也推出 ...

  5. Python脚本 - 下载必应每日壁纸

    Python脚本 - 下载必应每日壁纸 必应每日壁纸可以通过链接 https://area.sinaapp.com/bingImg/ 访问,本文利用python脚本进行下载. 所需条件 操作系统:Wi ...

  6. flask 自动换背景,使用python获取bing每日壁纸当作登陆背景图片

    欢迎关注原创视频教程 Python微信订餐小程序课程视频 https://edu.csdn.net/course/detail/36074 Python实战量化交易理财系统 https://edu.c ...

  7. win10 聚焦每日壁纸 Bing每日壁纸 下载

    给大家推荐一个获取win10 聚焦每日壁纸   Bing每日壁纸的方法,遇到喜欢的壁纸终于可以马上下载了 方法: 到 Microsoft Store 软件商城,搜索 Dynamic theme 下载即 ...

  8. bing每日壁纸_如何将Bing的每日背景用作Ubuntu壁纸

    bing每日壁纸 You're a Linux user, so naturally you're not Microsoft's biggest fan. But even you have to ...

  9. ubuntu桌面_Ubuntu桌面自动更换bing每日壁纸

    虽然我有3块显示屏幕,一般很少返回桌面,但还是掩不住ubuntu桌面单调的事实.Windows store有一个dynamic theme应用,可以自动抓取bing每日壁纸,并设置为桌面壁纸.简单搜了 ...

最新文章

  1. 华为云服务的购买和建站
  2. Android启动Activity的两种方式与四种启动模式
  3. pip 安装 scipy 出现错 no lapack/blas resources
  4. 平衡二叉树操作的演示
  5. 从RedHat到MongoDB,开源商业软件是如何占领世界的
  6. Congratulations! A Success Case on GDPR
  7. [转]使用Microsoft Web Application Stress Tool对web进行压力测试
  8. python.day.04——常用数据类型(一):strList
  9. 智能实验室-全能优化(Guardio) 4.3.0.730
  10. axture动画原型制作_AxureUX手机移动端交互原型通用模板精简版
  11. 计算机学报论文审稿流程,计算机学报投稿.docx
  12. java 回合制抛物线游戏_回合制抛物线射击游戏《坦克总动》重磅来袭!
  13. 祝大家新年快乐,前兔似锦!
  14. epub格式电子书剖析
  15. 全球5G设备商最新排名
  16. mysql 当天日期零点_MySQL查询当天0点,昨天 mysql 获取当天0点 和 当天23点59分59秒...
  17. 香港电讯及华为完成全球首个HSS/VoLTE系统转移
  18. 午间提示早盘三市分歧开盘,沪市深市表现较弱
  19. 三级运算在计算机,计算机等级三级(A)笔试试卷及答案
  20. MAC下,为什么下载ubuntu下载提示无课装载文件系统,下载很多版本,在官网上也下载了,请问如何解决

热门文章

  1. CC2541 内存区域
  2. JAVA练习 ——火车
  3. feign.FeignException$Forbidden: status 403 reading BaseUserFeignServiceApi#querySecurityUserDtoByOne
  4. PDF页面裁剪工具如何使用?
  5. Golang 建造者设计模式(三)
  6. 求两个相交圆的交点的公式
  7. 7-3 排队接水(C++)
  8. iviewui前端开发实例技术指南
  9. cte mysql_mysql8 公用表表达式CTE的使用
  10. vivo的android版本功能介绍,vivo帐号中心软件下载-vivo帐号appv6.0.0.1 官方安卓版-腾牛安卓网...