微软最近出了个 必应bing 缤纷桌面,使用下来还是不错,可以每天更换Bing首页的北京作为壁纸,但是该软件有个不好的地方是,安装后桌面上会有一个搜索框出现,很是烦人,而且不能关掉。于是出于技术考虑,想到了使用Python来实现这个功能。

正如很多介绍Python书中那样,Python是中胶水语言,用在哪里都是可行的。想要使用Python给桌面设置背景只需要下个模块安装即可:

http://sourceforge.net/projects/pywin32/

代码非常简单,参考了网上一些其他人写了代码,具体代码如下:

# -*- coding: utf-8 -*-

import urllib,time,os,Image,win32gui,win32con,win32api

class StealBing:

def __init__(self):

self.content = urllib.urlopen('http://cn.bing.com/').read()

self.bgImageUrl = ''

self.localFileName = ''

self.localBMPFileName = ''

def parserImageURL(self):

tempStr = self.content[self.content.index('g_img={url:')+12:]

self.bgImageUrl = tempStr[:tempStr.index('id:\'bgDiv\'')-2]

def createLocalFileName(self):

randomStr = time.strftime("%Y%m%d", time.localtime())

self.localFileName = 'D:/Bing/' + randomStr + '.jpg'

self.localBMPFileName = 'D:/Bing/' + randomStr + '.bmp'

def downloadImage(self):

if self.bgImageUrl == '':

self.parserImageURL()

if self.localFileName == '':

self.createLocalFileName()

urllib.urlretrieve(self.bgImageUrl, self.localFileName)

def updateBGImage(self):

img = Image.open(self.localFileName)

img.save(self.localBMPFileName)

os.remove(self.localFileName)

k = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER,"Control Panel\\Desktop",0,win32con.KEY_SET_VALUE)

win32api.RegSetValueEx(k, "WallpaperStyle", 0, win32con.REG_SZ, "2") #2拉伸适应桌面,0桌面居中

win32api.RegSetValueEx(k, "TileWallpaper", 0, win32con.REG_SZ, "0")

win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER, self.localBMPFileName , 1+2)

if __name__ == '__main__':

stealBing = StealBing()

stealBing.downloadImage()

stealBing.updateBGImage()

用python当壁纸_使用Python脚本将Bing的每日图片作为桌面的教程相关推荐

  1. python手机壁纸_用Python生成自己专属的手机春节壁纸

    点击上方" Python爬虫与数据挖掘 ",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 三军可夺帅也,匹夫不可夺志也. ...

  2. python做壁纸_用Python做地球壁纸

    本文主要讲解如何开发GUI界面并打包为exe程序发布. 开发环境:Python3 主要模块:PyQt5和pyinstaller 使用平台: win10 不多说,上代码: import sys, os ...

  3. python 时间序列预测_使用Python进行动手时间序列预测

    python 时间序列预测 Time series analysis is the endeavor of extracting meaningful summary and statistical ...

  4. python 概率分布模型_使用python的概率模型进行公司估值

    python 概率分布模型 Note from Towards Data Science's editors: While we allow independent authors to publis ...

  5. python log壁纸_一个爬取Bing每日壁纸的python脚本

    1. 背景 Bing搜索每天的背景图片有些比较适合做桌面,但是有的提供下载有的不提供下载.每天去点击下载又不太方便,所以第一次学习了一下python爬虫怎么写,写的很简单. 2. 相关技术 2.1 P ...

  6. 用python实现点阵屏_用Python代码来绘制彭罗斯点阵的教程

    这里是显示彭罗斯点阵的Python的脚本.是的,这是可以运行的有效Phython代码. 译注:彭罗斯点阵,物理学术语.上世纪70年代英国数学家彭罗斯第一次提出了这个概念,称为彭罗斯点阵(Pen-ros ...

  7. python网页版_经典python学习教程:20行代码打造一个微信群聊助手,解放双手

    今天的Python学习教程教大家如何用20行Python代码实现微信群聊助手,可以用来活跃群气氛,好多群主创建完群后,拉完一群人,之后就一片寂静,有个群聊助手,就可以帮忙活跃群里气氛,通过今天在自己的 ...

  8. python硬件交互_对Python的交互模式和直接运行.py文件的区别详解

    对Python的交互模式和直接运行.py文件的区别详解 看到类似C:\>是在Windows提供的命令行模式,看到>>>是在Python交互式环境下. 在命令行模式下,可以执行p ...

  9. python集群_使用Python集群文档

    python集群 Natural Language Processing has made huge advancements in the last years. Currently, variou ...

最新文章

  1. vcenter converter 转换xenserver下linux的错误
  2. python queue_Python-Queue 入门
  3. .NET MVC访问某方法后会跳转页面
  4. linux httppost 请求接口参数被截断_记一次小程序图片安全接口和CountDownLatch的使用...
  5. C# 多页打印简单实现
  6. python数组元素复制_python的numpy数组 的复制问题?
  7. Firefox下去掉密码自动填充
  8. 学python需要什么基础-学Python需要什么基础知识?零基础可以学Python吗?
  9. Lecture 1:强化学习简介
  10. 安装autocad2006出错
  11. springboot项目部署在服务器上
  12. 基数树结构---radix_tree
  13. Android studio Suggestion: use tools:overrideLibrary=”jp.wasabeef.blurry” to force usage
  14. 固定资产条码管理解决方案
  15. 关于物联网通信协议(接入协议)
  16. 用c语言a的n次再取p的余数,近世代数期末考试题库
  17. spyder(anaconda3)进行汉化
  18. 永久免费安装https方法
  19. 九个方面告诉你,一个合格的数据分析师,到底要什么能力?
  20. 软件工程复习总结:教材《软件工程概论》

热门文章

  1. HTML期末大作业-小米商城
  2. android拍照功能编程,android实现手机App实现拍照功能示例
  3. 计算机数据结构英语作文,数据结构学习心得英语作文
  4. 电路串联和并联图解_负反馈型三极管放大电路的识图方法
  5. python定义符号常量_python从零开始学习(二):python中的变量与常量
  6. linux 终端与shell输出大小不匹配
  7. LeetCode:892. 三维形体的表面积
  8. 4-5:TCP协议之确认应答(ACK)机制和超时重传机制
  9. IO流练习题 实现图片的加密解密操作
  10. JS DOM事件(常用消息、常用事件、addEventListener、removeEventListener)