Files
PlexPlaylistSync/README.md
T
2025-11-28 03:00:02 +09:00

2.2 KiB
Raw Blame History

PlexPlaylistSync

PlexPlaylistSync 是一个用于同步 Plex 播放列表和本地 .m3u/.m3u8 播放列表的工具。它支持自动监控和手动同步,并提供 WebUI 进行管理和配置。

功能特点

  • 双向同步:
    • 监控本地 .m3u/.m3u8 播放列表的变化,并同步到 Plex 播放列表。
    • 监控 Plex 播放列表的变化,并导出到本地 .m3u/.m3u8 文件。
  • WebUI 管理: 通过 WebUI 进行设置,例如指定本地目录、配置 Plex 服务器信息、管理播放列表等。
  • 支持流媒体播放列表导入: 从 Spotify、Deezer、Tidal 导入播放列表并匹配 Plex 资源。
  • 低功耗运行: 适合 NAS 或服务器 24 小时运行,优化资源使用,减少能耗。
  • Docker 部署: 可通过 Docker 轻松部署和运行。

Token 登录

首次登录时使用用户名和密码连接 Plex 服务器,成功后程序会将获得的 token 保存在配置文件中,后续通信仅使用该 token,不再保存明文密码。 默认情况下 Plex 服务器使用 32400 端口,可在未修改服务器端口时直接使用该默认值。 登录页面提供选择 httphttps 的下拉框,服务器地址输入框只需填写域名或 IP,默认值会从 config.json 读取。

开发环境快速启动(Docker Compose

项目已内置 Docker 化配置,开发时只需执行一次构建即可运行:

docker compose up --build
  • 默认会以 --reload 模式启动,监听本地 8080 端口,可在浏览器访问 http://localhost:8080
  • 通过 ./app/config.json 保存的 Plex 配置信息会在主机和容器间共享,便于调试时保留登录 token 等数据。
  • 如需自定义端口或其他参数,可在 docker-compose.yml 中调整。

前端构建与配置

  • sample-front-end 中提供了新的 React UI,运行 npm install && npm run build 会将打包产物输出到 app/static/frontendAPI 直接调用 FastAPI 后端。
  • 环境变量 STATUS_CHECK_INTERVAL_SECONDS 用于控制前端自动刷新云端连接状态的轮询间隔(默认 45 秒,最小 15 秒),用于避免频繁请求导致的循环异常。