python:偷取bing首页面图片作为桌面背景

import os
import sys
import random
import urllib
import win32gui
import win32con
import Image

class StealBing:
    def __init__(self):
        self.content = urllib.urlopen('http://cin.bing.com/').read()
        self.bgImageUrl = ''
        self.localFileName = ''
        self.localBMPFileName = ''

    def parserImageUrl(self):
        temp = self.content[self.content.index('g_img={url:') + len('g_img={url:') + 1 : len(self.content)]
        temp = temp[0 : temp.index(',id:') - 1]
        print temp
        print temp
        self.bgImageUrl = temp

    def createLocalFileName(self):
        randomStr = ''.join(random.sample(['a','b','c','d','e','f','g','h','i','j', 'k', 'l',
                                           'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'], 6)).replace('', '')
        self.localFileName = 'd:\\bg_pictures\\' + randomStr + '.jpg'
        self.localBMPFileName = 'd:\\bg_pictures\\' + randomStr + '.bmp'

    def downloadImage(self):
        if self.bgImageUrl == '':
            self.parserImageUrl()
        if self.localFileName == '':
            self.createLocalFileName()
        data = urllib.urlretrieve(self.bgImageUrl, self.localFileName)

    def updateBGImage(self):
        img = Image.open(self.localFileName)
        img.save(self.localBMPFileName)
        os.remove(self.localFileName)
        win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER, self.localBMPFileName, 0)

stealing = StealBing()
stealing.downloadImage()
stealing.updateBGImage()

你可能感兴趣的:(python:偷取bing首页面图片作为桌面背景)