# QiSHui **Repository Path**: nice-cms/qi-shui ## Basic Information - **Project Name**: QiSHui - **Description**: 汽水音乐api下载工具 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-01-15 - **Last Updated**: 2026-01-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # PopDownloader 二次开发版 本项目为基于开源项目 [SaKongA/PopDownloader](https://github.com/SaKongA/PopDownloader) 的二次开发版本。 - 原项目地址:https://github.com/SaKongA/PopDownloader - 技术栈:Node.js + Express + Socket.IO + Vue 2 - UI:使用 Element UI(Vue2 版),部分界面样式进行了自定义与美化 --- ## 一、运行环境 - Node.js(建议 16+) - npm 克隆或下载本仓库后,先安装依赖: ```bash npm install ``` --- ## 二、启动方式一:普通方式(前台运行) 适合在开发/调试阶段使用。 ```bash npm start ``` 启动后,命令行会显示: ```text Server is running on http://localhost:3000 ``` 浏览器打开:`http://localhost:3000` 即可访问页面。 按下 `Ctrl + C` 可停止服务。 --- ## 三、启动方式二:pm2 后台静默运行 适合在服务器上长期运行。 ### 1. 全局安装 pm2(如尚未安装) ```bash npm install -g pm2 ``` ### 2. 使用配置文件启动 本项目根目录已经包含 `ecosystem.config.js`,可直接使用: ```bash # 确保当前在项目根目录 cd /home/mytx/桌面/汽水音乐下载/PopDownloader # 启动(后台运行) pm2 start # 或显式指定配置文件 pm2 start ecosystem.config.js --only popdownloader ``` pm2 会创建名为 `popdownloader` 的进程,默认监听 `3000` 端口。 ### 3. 常用 pm2 管理命令 ```bash # 查看进程状态 pm2 status # 查看日志 pm2 logs popdownloader # 重启 pm2 restart popdownloader # 停止 pm2 stop popdownloader # 从 pm2 中删除 pm2 delete popdownloader ``` ### 4. 设置开机自启(可选) ```bash pm2 startup # 根据提示执行一条 sudo 命令 pm2 save # 保存当前进程列表,重启后自动恢复 ``` --- ## 四、主要 HTTP API 简要说明 服务启动后默认地址为 `http://localhost:3000`。 - **获取歌单信息** ```text GET /getPlaylist?url={分享链接}&page=1&pageSize=10 ``` - **批量打包下载** ```text POST /downloadSelected Content-Type: application/json { "tracks": [ { "id": "123", "name": "xxx", "type": "音频", "download_url": "..." } ] } ``` - **直接下载音频(已知直链)** ```text GET /download?url={文件直链}&fileName={保存文件名} ``` - **视频转音频下载** ```text GET /downloadAudio?url={视频直链}&title={标题} ``` - **下载歌词** ```text GET /downloadLyrics?trackId={歌曲 ID} ``` 你可以在 Shell、Python、Node.js 等环境中通过 HTTP 请求调用以上接口,实现二次开发与自动化脚本集成。