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

2023-11-10 11:50

本文主要是介绍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/382487

相关文章

JAVA Calendar设置上个月时,日期不存在或错误提示问题及解决

《JAVACalendar设置上个月时,日期不存在或错误提示问题及解决》在使用Java的Calendar类设置上个月的日期时,如果遇到不存在的日期(如4月31日),默认会自动调整到下个月的相应日期(... 目录Java Calendar设置上个月时,日期不存在或错误提示java进行日期计算时如果出现不存在的

浅析python如何去掉字符串中最后一个字符

《浅析python如何去掉字符串中最后一个字符》在Python中,字符串是不可变对象,因此无法直接修改原字符串,但可以通过生成新字符串的方式去掉最后一个字符,本文整理了三种高效方法,希望对大家有所帮助... 目录方法1:切片操作(最推荐)方法2:长度计算索引方法3:拼接剩余字符(不推荐,仅作演示)关键注意事

python版本切换工具pyenv的安装及用法

《python版本切换工具pyenv的安装及用法》Pyenv是管理Python版本的最佳工具之一,特别适合开发者和需要切换多个Python版本的用户,:本文主要介绍python版本切换工具pyen... 目录Pyenv 是什么?安装 Pyenv(MACOS)使用 Homebrew:配置 shell(zsh

Java利用Spire.XLS for Java自动化设置Excel的文档属性

《Java利用Spire.XLSforJava自动化设置Excel的文档属性》一个专业的Excel文件,其文档属性往往能大大提升文件的可管理性和可检索性,下面我们就来看看Java如何使用Spire... 目录Spire.XLS for Java 库介绍与安装Java 设置内置的 Excel 文档属性Java

Python自动化提取多个Word文档的文本

《Python自动化提取多个Word文档的文本》在日常工作和学习中,我们经常需要处理大量的Word文档,本文将深入探讨如何利用Python批量提取Word文档中的文本内容,帮助你解放生产力,感兴趣的小... 目录为什么需要批量提取Word文档文本批量提取Word文本的核心技术与工具安装 Spire.Doc

Python中Request的安装以及简单的使用方法图文教程

《Python中Request的安装以及简单的使用方法图文教程》python里的request库经常被用于进行网络爬虫,想要学习网络爬虫的同学必须得安装request这个第三方库,:本文主要介绍P... 目录1.Requests 安装cmd 窗口安装为pycharm安装在pycharm设置中为项目安装req

Python容器转换与共有函数举例详解

《Python容器转换与共有函数举例详解》Python容器是Python编程语言中非常基础且重要的概念,它们提供了数据的存储和组织方式,下面:本文主要介绍Python容器转换与共有函数的相关资料,... 目录python容器转换与共有函数详解一、容器类型概览二、容器类型转换1. 基本容器转换2. 高级转换示

使用Python将PDF表格自动提取并写入Word文档表格

《使用Python将PDF表格自动提取并写入Word文档表格》在实际办公与数据处理场景中,PDF文件里的表格往往无法直接复制到Word中,本文将介绍如何使用Python从PDF文件中提取表格数据,并将... 目录引言1. 加载 PDF 文件并准备 Word 文档2. 提取 PDF 表格并创建 Word 表格

使用Python实现局域网远程监控电脑屏幕的方法

《使用Python实现局域网远程监控电脑屏幕的方法》文章介绍了两种使用Python在局域网内实现远程监控电脑屏幕的方法,方法一使用mss和socket,方法二使用PyAutoGUI和Flask,每种方... 目录方法一:使用mss和socket实现屏幕共享服务端(被监控端)客户端(监控端)方法二:使用PyA

Python列表的创建与删除的操作指南

《Python列表的创建与删除的操作指南》列表(list)是Python中最常用、最灵活的内置数据结构之一,它支持动态扩容、混合类型、嵌套结构,几乎无处不在,但你真的会创建和删除列表吗,本文给大家介绍... 目录一、前言二、列表的创建方式1. 字面量语法(最常用)2. 使用list()构造器3. 列表推导式