Python 将土味情话语录设置为桌面壁纸

2024-03-03 01:18

本文主要是介绍Python 将土味情话语录设置为桌面壁纸,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

每天学一句,单身远离我!

 

import os
import tempfile
import time
import requests
import win32api
import win32con
import win32gui
from PIL import Image, ImageDraw, ImageFont
import randomdef setWallPaper(pic):key = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER, "Control Panel\\Desktop", 0, win32con.KEY_SET_VALUE)win32api.RegSetValueEx(key, "WallpaperStyle", 0, win32con.REG_SZ, "2")# 2拉伸适应桌面,0桌面居中win32api.RegSetValueEx(key, "TileWallpaper", 0, win32con.REG_SZ, "0")win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER, pic, 1 + 2)print('成功应用桌面壁纸')def love():url = r'https://api.vvhan.com/api/love'res = requests.get(url).textcontent = "『{}』".format(res)return contentdef love2():url = r'https://api.lovelive.tools/api/SweetNothings/WebSite'res = requests.get(url).textcontent = "『{}』".format(res)return contentdef hitokoto():url = 'https://v1.hitokoto.cn/'res = requests.get(url).json()hitokoto = res['hitokoto'].strip('。')from_where = res['from']from_who = res['from_who']content = "『{}』".format(hitokoto)return contentdef word():global word_typeif word_type == '0':return hitokoto()elif word_type == '1':return random.choice([love(), love2()])def jpg(path):if not os.path.exists(path):url = 'https://cn-south-227-storage-hitokoto-19627663.oss.dogecdn.com/pic/qf3cu.jpg'content = requests.get(url).contentwith open(path, 'wb+') as f:f.write(content)# 语录类型
word_type = 0
# 临时目录
root_path = tempfile.gettempdir()
# 背景图片路径
bgfile = os.path.join(root_path, "bg.jpg")
# 最终的壁纸图片路径
wallfile = os.path.join(root_path, "wall.jpg")
def main():# 下载背景图jpg(bgfile)# 打开背景图img = Image.open(bgfile)# 创建空白图d = ImageDraw.Draw(img)# 设置字体font = ImageFont.truetype("simhei.ttf", 60, encoding="utf-8")width, height = img.sizelength = 99one_word = ""# 确保语录不超过壁纸宽度while (length > width//60):# 获取语录one_word = word()length = len(one_word)time.sleep(1)print(one_word)# 语录添加到图片d.text((width / 2 - 30 * (len(one_word)), height / 2 - 240), one_word, font=font, fill=(80, 80, 80, 128))# 报错图片img.save(wallfile)# 关闭流img.close()# 设置壁纸setWallPaper(wallfile)# 删除壁纸图片os.unlink(wallfile)# 删除背景图片# os.unlink(bgfile)if __name__ == '__main__':word_type = input('>> 类型(0:一言; 1:情话):').strip()while True:main()time.sleep(5)

 

这篇关于Python 将土味情话语录设置为桌面壁纸的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/768006

相关文章

Python中@classmethod和@staticmethod的区别

《Python中@classmethod和@staticmethod的区别》本文主要介绍了Python中@classmethod和@staticmethod的区别,文中通过示例代码介绍的非常详细,对大... 目录1.@classmethod2.@staticmethod3.例子1.@classmethod

Python手搓邮件发送客户端

《Python手搓邮件发送客户端》这篇文章主要为大家详细介绍了如何使用Python手搓邮件发送客户端,支持发送邮件,附件,定时发送以及个性化邮件正文,感兴趣的可以了解下... 目录1. 简介2.主要功能2.1.邮件发送功能2.2.个性签名功能2.3.定时发送功能2. 4.附件管理2.5.配置加载功能2.6.

使用Python进行文件读写操作的基本方法

《使用Python进行文件读写操作的基本方法》今天的内容来介绍Python中进行文件读写操作的方法,这在学习Python时是必不可少的技术点,希望可以帮助到正在学习python的小伙伴,以下是Pyth... 目录一、文件读取:二、文件写入:三、文件追加:四、文件读写的二进制模式:五、使用 json 模块读写

Python使用qrcode库实现生成二维码的操作指南

《Python使用qrcode库实现生成二维码的操作指南》二维码是一种广泛使用的二维条码,因其高效的数据存储能力和易于扫描的特点,广泛应用于支付、身份验证、营销推广等领域,Pythonqrcode库是... 目录一、安装 python qrcode 库二、基本使用方法1. 生成简单二维码2. 生成带 Log

Python如何使用seleniumwire接管Chrome查看控制台中参数

《Python如何使用seleniumwire接管Chrome查看控制台中参数》文章介绍了如何使用Python的seleniumwire库来接管Chrome浏览器,并通过控制台查看接口参数,本文给大家... 1、cmd打开控制台,启动谷歌并制定端口号,找不到文件的加环境变量chrome.exe --rem

一文带你理解Python中import机制与importlib的妙用

《一文带你理解Python中import机制与importlib的妙用》在Python编程的世界里,import语句是开发者最常用的工具之一,它就像一把钥匙,打开了通往各种功能和库的大门,下面就跟随小... 目录一、python import机制概述1.1 import语句的基本用法1.2 模块缓存机制1.

使用Python将长图片分割为若干张小图片

《使用Python将长图片分割为若干张小图片》这篇文章主要为大家详细介绍了如何使用Python将长图片分割为若干张小图片,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. python需求的任务2. Python代码的实现3. 代码修改的位置4. 运行结果1. Python需求

Python实现将实体类列表数据导出到Excel文件

《Python实现将实体类列表数据导出到Excel文件》在数据处理和报告生成中,将实体类的列表数据导出到Excel文件是一项常见任务,Python提供了多种库来实现这一目标,下面就来跟随小编一起学习一... 目录一、环境准备二、定义实体类三、创建实体类列表四、将实体类列表转换为DataFrame五、导出Da

Python视频处理库VidGear使用小结

《Python视频处理库VidGear使用小结》VidGear是一个高性能的Python视频处理库,本文主要介绍了Python视频处理库VidGear使用小结,文中通过示例代码介绍的非常详细,对大家的... 目录一、VidGear的安装二、VidGear的主要功能三、VidGear的使用示例四、VidGea

Python Invoke自动化任务库的使用

《PythonInvoke自动化任务库的使用》Invoke是一个强大的Python库,用于编写自动化脚本,本文就来介绍一下PythonInvoke自动化任务库的使用,具有一定的参考价值,感兴趣的可以... 目录什么是 Invoke?如何安装 Invoke?Invoke 基础1. 运行测试2. 构建文档3.