首页 > 编程语言 > 详细

Python 随即更换美女桌面壁纸(可修改自己喜欢的风格桌面壁纸)【4个网站】

时间:2020-12-26 18:16:54      阅读:60      评论:0      收藏:0      [点我收藏+]

目前可以随即选取4个网站中一张美女图片,来作为壁纸。

import random
import requests
from lxml import etree
from fake_useragent import UserAgent
import win32api
import win32gui
import win32con
import os
import re
import urllib

def set_wallpaper(bmp_path):
    # 打开指定注册表路径
    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表示平铺,拉伸居中等都是0
    win32api.RegSetValueEx(reg_key, "TileWallpaper", 0, win32con.REG_SZ, "0")
    # 刷新桌面
    win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER,bmp_path, win32con.SPIF_SENDWININICHANGE)
class bizhi_360():
    def __init__(self):
        bizhi_360 = [http://bizhi360.com/meinv/list_{}.html.format(i) for i in range(48)]
        bizhi_360_one = random.choice(bizhi_360)
        wang_zhan = [bizhi_360_one]
        self.a = random.choice(wang_zhan)
    def huoqu(self):

          # 模拟访问者
        ua = UserAgent().random
        headers = {"User-Agent": ua}
        data = requests.get(url=self.a, headers=headers)
        data.encoding= "utf-8"
        data= data.text
        s = etree.HTML(data)
        meinv_liebiao = s.xpath(//*[@id="main"]/div/div[1]/ul/li/a//@href)
        if len(meinv_liebiao) >1 :
            meinv = random.choice(meinv_liebiao)
            s = http://bizhi360.com
            url = s + meinv
            self.xiazai(url)
        else:
            pass
    def xiazai(self,url):
        ua = UserAgent().random
        headers = {"User-Agent": ua}
        data = requests.get(url=url, headers=headers)
        data.encoding = "utf-8"
        data =data.text
        s = etree.HTML(data)
        meinv_tupian = s.xpath(//*[@id="main"]/div/div[1]/div[2]/ul/li/a//@href)
        if len(meinv_tupian) >1 :
            meinv = random.choice(meinv_tupian)
            s = http://bizhi360.com
            url1 = s + meinv
            print(url1)
            self.xiazai_tupian(url1)
        else:
            meinv_url = s.xpath(//*[@id="main"]/div/div[1]/div[2]/figure/a//@href)
            try:
                url = meinv_url[0]
                response = requests.get(url,headers=headers)
                # 获取的文本实际上是图片的二进制文本
                img = response.content
                # 将他拷贝到本地文件 w 写  b 二进制  wb代表写入二进制文本
                # 保存路径
                path1 = os.getcwd()
                path = path1 + \\1.jpg
                with open(path, wb) as f:
                    f.write(img)
            except Exception as ex:
                print("出错")

    def xiazai_tupian(self,url1):
        ua = UserAgent().random
        headers = {"User-Agent": ua}
        data = requests.get(url=url1, headers=headers)
        data.encoding = "utf-8"
        data = data.text
        s = etree.HTML(data)
        meinv_tupian = s.xpath(//*[@id="main"]/div[1]/div[1]/div[2]/figure/a//@href)
        try:
            url = meinv_tupian[0]
            response = requests.get(url,headers=headers)
            # 获取的文本实际上是图片的二进制文本
            img = response.content
            # 将他拷贝到本地文件 w 写  b 二进制  wb代表写入二进制文本
            # 保存路径
            path1 = os.getcwd()
            path = path1+ \\1.jpg
            with open(path, wb) as f:
                f.write(img)
        except Exception as ex:
            print("--------出错继续----")


class k4_bizhi():
    def __init__(self):
        num = random.randint(1,171)
        bizhi_360 = (http://pic.netbian.com/4kmeinv/index_{}.html.format(num))
        self.a = bizhi_360
    def huoqu(self):
        ua = UserAgent().random
        headers = {"User-Agent": ua}
        data = requests.get(url=self.a, headers=headers)
        data.encoding = "utf-8"
        data = data.text
        s = etree.HTML(data)
        meinv_liebiao = s.xpath(//*[@id="main"]/div[3]/ul/li/a//@href)
        if len(meinv_liebiao) >1 :
            meinv = random.choice(meinv_liebiao)
            s = http://pic.netbian.com
            url = s + meinv
            self.xiazai(url)
        else:
            pass
    def xiazai(self,url):
        ua = UserAgent().random
        headers = {"User-Agent": ua}
        data = requests.get(url=url, headers=headers)
        data.encoding = "utf-8"
        data = data.text
        s = etree.HTML(data)
        meinv_tupian = s.xpath(//*[@id="img"]/img//@src)
        try:
            s = http://pic.netbian.com
            url1 = s + meinv_tupian[0]
            response = requests.get(url1, headers=headers)
            # 获取的文本实际上是图片的二进制文本
            img = response.content
            # 将他拷贝到本地文件 w 写  b 二进制  wb代表写入二进制文本
            # 保存路径
            path1 = os.getcwd()
            path = path1 + \\1.jpg
            with open(path, wb) as f:
                f.write(img)
        except Exception as ex:
            print("--------出错继续----")

class k4_weimei():
    def __init__(self):
        num = random.randint(1, 6)
        bizhi_360 = (http://www.4kbizhi.com/meinv/index_{}.html.format(num))
        self.a = bizhi_360
    def huoqu(self):

          # 模拟访问者
        ua = UserAgent().random
        headers = {"User-Agent": ua}
        data = requests.get(url=self.a, headers=headers)
        data.encoding= "utf-8"
        data= data.text
        s = etree.HTML(data)
        meinv_liebiao = s.xpath(/html/body/div[2]/div[1]/ul/li/a//@href)
        meinv_liebiao1 = s.xpath(/html/body/div[2]/div[2]/ul/li/a//href)
        meinv_lie = meinv_liebiao +meinv_liebiao1
        if len(meinv_lie) >1 :
            meinv = random.choice(meinv_liebiao)
            meinv= meinv.replace(.html, ‘‘)
            s = http://www.4kbizhi.com
            url = s + meinv + -1920x1080 +.html
            self.xiazai(url)
        else:
            pass
    def xiazai(self,url):
        ua = UserAgent().random
        headers = {"User-Agent": ua}
        data = requests.get(url=url, headers=headers)
        data.encoding = "utf-8"
        data =data.text
        s = etree.HTML(data)
        meinv_tupian = s.xpath(/html/body/div[2]/img//@src)[0]
        b = meinv_tupian.replace(small, ‘‘)
        c = b.split(/)
        c.pop()
        c = /.join(c)
        b = b.split(/)[-1]
        b = b[:11]
        meinv_tupian_url = c + / + b + .jpg
        try:
            s = http://www.4kbizhi.com
            url1 = s + meinv_tupian_url
            response = requests.get(url1,headers=headers)
            # 获取的文本实际上是图片的二进制文本
            img = response.content
            # 将他拷贝到本地文件 w 写  b 二进制  wb代表写入二进制文本
            # 保存路径
            path1 = os.getcwd()
            path = path1 + \\1.jpg
            with open(path, wb) as f:
                f.write(img)
        except Exception as ex:
            print("出错")
class tupian_zhijia():
    def __init__(self):
        num = random.randint(1, 11)
        bizhi_360 = (https://www.tupianzj.com/bizhi/DNmeinv/list_77_{}.html.format(num))
        self.a = bizhi_360
    def huoqu(self):

          # 模拟访问者
        ua = UserAgent().random
        headers = {"User-Agent": ua}
        data = requests.get(url=self.a, headers=headers)
        data.encoding= "utf-8"
        data= data.text
        s = etree.HTML(data)
        meinv_liebiao = s.xpath(//*[@id="container"]/div/div/div[3]/div/ul/li/a//@href)

        if len(meinv_liebiao) >1 :
            meinv = random.choice(meinv_liebiao)
            meinv= meinv.replace(.html, ‘‘)
            s = https://www.tupianzj.com
            url = s + meinv + _1920x1080 +.html
            self.xiazai(url)
        else:
            pass
    def xiazai(self,url):
        ua = UserAgent().random
        headers = {"User-Agent": ua}
        data = requests.get(url=url, headers=headers)
        data.encoding = "utf-8"
        data = data.text
        meinv_tupian = re.findall(r"if\(imgSize==\"1920x1080\"\) picurl=‘.*",data)
        meinv_tupian = ‘‘.join(meinv_tupian)
        meinv_tupian = meinv_tupian.replace(\‘, ‘‘)
        meinv_tupian = meinv_tupian.replace(;, ‘‘)
        meinv_tupian =  meinv_tupian.split(=)[-1]
        meinv_tupian1 = ‘‘.join(meinv_tupian)
        self.xiazai_tupian(meinv_tupian1)
    def xiazai_tupian(self,url1):
        try:
            ua = UserAgent().random
            url = str(url1)
            headers = {"User-Agent": ua}
            request = urllib.request.Request(url, headers=headers)
            response = urllib.request.urlopen(request)
            # 获取的文本实际上是图片的二进制文本
            img = response.read()
            # response = requests.get(url, headers=headers)
            # img = response.content
            # 将他拷贝到本地文件 w 写  b 二进制  wb代表写入二进制文本
            # 保存路径
            path1 = os.getcwd()
            path = path1 + \\1.jpg
            with open(path, wb) as f:
                f.write(img)
        except Exception as ex:
            print("出错")


if __name__== __main__:
    liebiao = [1,2,3,4]
    a= random.choice(liebiao)
    if a ==1:
        bizhi_360().huoqu()
    elif a==2:
        k4_bizhi().huoqu()
    elif a ==3:
        k4_weimei().huoqu()
    elif a==4:
        tupian_zhijia().huoqu()
    path1 = os.getcwd()
    path = path1 +"\\1.jpg"  # 图片路径
    try:
        set_wallpaper(path)
    except:
        print(图片为下载!)

来看效果图:

技术分享图片

 

 自己可以打包成exe文件,用win10自带的任务工具,设置成多久启动一次。也可以写成bat文件,在写成vbs启动bat文件去除代码框,放在桌面双击就换一站美女桌面壁纸。

Python 随即更换美女桌面壁纸(可修改自己喜欢的风格桌面壁纸)【4个网站】

原文:https://www.cnblogs.com/aotumandaren/p/14192029.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!