logo
0
0
WeChat Login
The repository has been archived and is now in read-only mode.
docs: 更新README中的安装说明和API地址

ACDB v2.0

ACDB(Automatic Change Desktop Background)是一个功能强大的自动桌面壁纸更换工具,支持从API自动获取精美图片并定时更换桌面壁纸。

✨ 新特性 v2.0

🎯 核心功能

  • 🖼️ 多格式支持:支持 JPG、PNG、WebP、BMP 等主流图片格式
  • 智能定时:可自定义壁纸切换间隔(最小30秒)
  • 📁 历史管理:可选择保存历史壁纸,支持数量限制
  • 🔄 智能重试:网络异常时自动重试,支持可配置重试次数
  • 📊 下载进度:实时显示图片下载进度
  • 🎨 彩色输出:美观的彩色控制台界面

🛠️ 增强功能

  • 📋 交互模式:运行中可按Ctrl+C进入交互式命令模式
  • 📜 详细日志:自动记录运行日志到文件
  • ⚙️ 配置持久化:自动保存用户配置到JSON文件
  • 📈 状态监控:实时查看程序运行状态和统计信息
  • 🎯 手动触发:支持手动立即切换壁纸
  • 📂 历史查看:查看已下载的历史壁纸列表

📥 源码运行

  1. 确保已安装 Python 3.7+
  2. 克隆仓库:
    git clone https://github.com/nixingshiguang/ACDB.git cd ACDB
  3. 安装依赖:
    pip install -r requirements.txt
  4. 运行程序:
    python acdb.py

🚀 使用方法

首次运行

  1. 运行程序后,会提示输入配置信息:

    • API地址:图片API的URL(直接回车使用默认)
    • 切换间隔:壁纸切换的时间间隔(秒,直接回车使用默认60秒)
    • 历史保存:是否保存历史壁纸(y/N)
    • 历史数量:最大保存的历史壁纸数量
  2. 配置完成后程序自动开始运行

交互式命令

程序运行时按 Ctrl+C 进入交互模式,支持以下命令:

命令说明
h, help显示帮助信息
m, manual手动切换壁纸
s, status显示程序状态
c, config显示当前配置
l, list显示历史壁纸列表
q, quit退出程序
回车继续自动模式

⚙️ 配置说明

配置文件 acdb_config.json 包含以下选项:

{ "url": "https://www.160621.xyz/api/img/random", "interval": 60, "max_retries": 3, "timeout": 30, "save_history": true, "max_history": 10, "supported_formats": ["jpg", "jpeg", "png", "webp", "bmp"] }

配置参数说明

参数类型默认值说明
urlstringAPI地址图片API的完整URL
intervalnumber60壁纸切换间隔(秒,最小30)
max_retriesnumber3下载失败时的最大重试次数
timeoutnumber30网络请求超时时间(秒)
save_historybooleantrue是否保存历史壁纸
max_historynumber10最大保存历史壁纸数量
supported_formatsarray见配置文件支持的图片格式列表

📁 文件结构

ACDB/ ├── acdb.py # 主程序文件 ├── acdb_config.json # 配置文件(自动生成) ├── acdb.log # 运行日志(自动生成) ├── wallpapers/ # 历史壁纸目录(自动创建) │ ├── wallpaper_20231225_120000.jpg │ └── ... ├── requirements.txt # Python依赖列表 └── README.md # 说明文档

🛠️ 自行编译

如需自行编译为可执行文件:

  1. 安装依赖:

    pip install -r requirements.txt
  2. 编译为单文件可执行程序:

    pyinstaller --onefile --noconsole -n acdb acdb.py

    或使用控制台版本:

    pyinstaller --onefile -n acdb acdb.py

🐛 故障排除

常见问题

Q: 壁纸切换时出现短暂黑屏?
A: 这是正常现象,因为Windows系统切换壁纸时的内部机制导致,目前暂无完美解决方案。

Q: 下载失败怎么办?
A: 程序会自动重试,如果多次失败请检查:

  • 网络连接是否正常
  • API地址是否可访问
  • 防火墙是否阻止程序联网

Q: 如何更换API源?
A: 在交互模式中输入新的API地址,或直接编辑 acdb_config.json 文件中的 url 字段。

Q: 历史壁纸占用空间过大?
A: 可以通过配置文件调整 max_history 参数,或设置 save_historyfalse 禁用历史保存。

日志查看

程序运行日志保存在 acdb.log 文件中,包含详细的运行信息和错误记录。

🔧 高级用法

自定义API

程序支持任何返回图片的HTTP API,只需确保:

  • API返回的Content-Type为图片类型
  • 支持GET请求
  • 返回的图片格式在支持列表中

系统集成

可以将程序添加到Windows启动项中,实现开机自动运行:

  1. Win+R 打开运行对话框
  2. 输入 shell:startup 并回车
  3. acdb.exe 的快捷方式复制到打开的文件夹中

📄 许可证

本项目采用 MIT 许可证,详情请查看 LICENSE 文件。

🤝 贡献

欢迎提交 Issue 和 Pull Request 来帮助改进项目!

📞 联系方式

如有问题或建议,请通过以下方式联系:


⭐ 如果这个项目对你有帮助,请给个 Star 支持一下!