简介
Github 项目 pywallpaper。可以将大多数的 JSON API
中的图片链接作为自己的 Windows wallpaper,现已经包含以下网站图片的配置文件:
虽然现在网上各种设置背景的软件数不胜数,但是又有几个是不会在后台悄悄运行或者跳出广告的呢?开发这个软件一是为了在学 Python
时练手,增加动力;二是想要一个可配置的、具有大量高质图片资源、运行完就干干净净退出的程序。
注:不可将其用于任何的商业目的!
以下是项目 README.md
, 程序员都是比较懒的哈哈。
Dese
Windows 上可自动设置背景桌面的小程序。
使用方法
可使用PyInstaller进行打包
方法一
双击运行 Dese.exe
方法二
命令行切换到当前目录后,输入以下命令:
python main.py
即可运行。
进阶配置
图片来源是可以通过配置文件进行配置的,以下是配置文件所有字段的定义:
字段 | 可选值 | 描述 |
---|---|---|
api_url | 任意 | 一个可以获得 JSON 格式的 API URL |
picture_url_locat | "key"、"[number]"、"[start~end]" | 一种 JSON 位置的表述方式 |
name_type | "url"、"time"、"json" | 图片文件的命名方式 |
name_exclude_char | 任意字符 | 图片名称中需要去掉的字符 |
name_fill_char | 任意字符 | 去掉字符时可选择用此值来填充 |
wallpaper_fill_type | "fill"、"fit"、"Stretch"、"tile"、"center"、"span" | 背景填充方式 |
picture_store_path | 相对目录 如 "pics" 或绝对目录 如 "E:/wallpaper" | 背景图片存放目录,可为相对目录或绝对目录 |
picture_postfix | 任意后缀或者为空 | 下载图片时的后缀,如果所选择的命名方式中不存在后缀则在此添加 |
api_url
这个是 API 的地址,要求必须是返回 JSON
格式的数据。如 bing 的 API,百度图片的 API,
爱壁纸的 API 以及 Unsplash 的 API。
picture_url_locat
一种特殊的 JSON
对象选择描述方式,例如以下 JSON
对象:
{
"name": "baidu",
"data": [
{
"url": "http://baidu.com/xxx1.jpg",
"level": "6"
},
{
"url": "http://baidu.com/xxx2.jpg",
"level": "2"
},
{
"url": "http://baidu.com/xxx3.jpg",
"level": "2"
}
]
}
picture_url_locat 值 |
效果 |
---|---|
"name" | 获取 name 的值,也就是 baidu
|
"data [0] url" | 获取 data 数组中索引为 0 的元素的 url 字段值,此处即获得了 http://baidu.com/xxx1.jpg 这个 URL |
"data [0~2] url" | 获取 data 数组中索引为 0 到 2 的随机数元素的 url 字段值,在这里我们只能确定他最终获取的是一个 URL |
简单吧?
name_type
命名的类型,总共有三种方式:url
、json
、time
。
url
是截取图片下载链接最后
一部分作为文件名(在最后一个/
之后,?
之前),如选择的图片链接为http://baidu.com/xxx1.jpg?size=2k
,则截取到的文件名为xxx1.jpg
。json
则接收和picture_url_locat
字段一样的参数,从json
中获取文件名time
则是以下载图片时的时间(时间戳)作为文件名。
name_exclude_char
这个字段在 name_type
为 json
或 url
时必须填写(可为空字符串 "")。表示需要从
文件名中剔除的字符,这是为了防止特殊字符在 Windows 系统中造成乱码。多个字符直接连在一起
即可,如:我要去除文件名中的 @
和 #
符号,name_exclude_char
的值就应为 "@#"
。
name_fill_char
此字段在 name_exclude_char
字段填写后生效,当 name_exclude_char
中规定的字符被剔除时,会使用当前字段定义的字符来填充。如:
原始文件名为:12315*43@2.jpg
,name_exclude_char
值为 "*@"
,name_fill_char
值为 __
,则最为后的文件名为 12315__43__2.jpg
wallpaper_fill_type
背景的填充方式,对应 Windows 10 设置->个性化->背景->契合度
中的值。默认为 fill
。
picture_store_path
图片的存放路径,默认为 pics
, 绝对目录以及相对目录均可。如 E:/wallpaper
。注:路径用 /
分隔而不是 \ 。
picture_postfix
图片名字的后缀,如果你的图片下载链接中不存在文件后缀(如 htt://baidu.com/xxx1
),
或者 name_type
选择的是 time
,则需要将此字段填写为 ".jpg"。不过如果你的文件名中已有
后缀(如 http://baidu.com/xxx1.jpg
),则将此字段的值设置为 ""
。此字段不可省略。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。