Metadata-Version: 2.4
Name: feiying
Version: 1.0.4
Summary: 飞影 · MacCMS 播放器外壳，多数据源，一条命令自建
Author: feiying
License: MIT
Project-URL: Homepage, https://a3e8ccb225cfa33ec.app.workbuddy.host/?sharecode=EK2CY4UHDI
Keywords: maccms,vod,player,flask,self-hosted,termux
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: Android
Classifier: Environment :: Web Environment
Classifier: Framework :: Flask
Classifier: Topic :: Multimedia :: Video
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: flask>=2.0
Requires-Dist: requests>=2.20
Requires-Dist: waitress>=2.0
Dynamic: license-file

# 飞影

一个跑在自己设备上的 MacCMS 播放器外壳。程序本身**不带任何片单**：你填哪个接口地址，它就显示哪个源的内容；首页、分类、详情、播放、搜索、24 小时缓存与增量更新都由它负责。

- 多数据源，右上角一键切换，各源缓存互不干扰
- 手机 / 电脑 / 电视盒子都能开，浏览器访问即可，不用装 App
- 不用 Docker、不用数据库、不用编译

## 安装

```bash
pip install feiying
```

想装在独立环境里（推荐，避免污染系统 Python）：

```bash
pipx install feiying
```

Android 的 Termux 里：

```bash
pkg install python
pip install feiying
```

## 启动

```bash
feiying start
```

打开 <http://127.0.0.1:8080>。第一次是空白页，两种开始方式：

- 点「载入内置演示源」先看效果（36 部本地演示片，能点进详情、能播）
- 粘贴你自己的 MacCMS 接口地址（形如 `https://xxx.com/api.php/provide/vod/`），点保存

手机和电脑连同一个 WiFi 时，用 `feiying status` 里显示的「同一WiFi」地址就能在电脑上打开。

## 常用命令

| 命令 | 作用 |
|---|---|
| `feiying` | 状态一览 |
| `feiying start` | 后台启动 |
| `feiying start -f` | 前台启动，Ctrl+C 停止 |
| `feiying stop` | 停止 |
| `feiying restart` | 重启 |
| `feiying status` | 是否在跑、端口、版本、数据源、缓存 |
| `feiying log -f` | 实时日志 |
| `feiying port 9000` | 换端口并重启 |
| `feiying config` | 查看数据源配置 |
| `feiying cache` | 清服务端缓存 |
| `feiying update` | 升级到最新版 |
| `feiying open` | 用浏览器打开 |

## 数据放在哪

`~/.feiying/`，升级或卸载包都不会动它：

```
~/.feiying/
├─ config.json     数据源配置 ← 要备份就备份它
├─ settings.json   端口等本机设置
├─ cache/          磁盘缓存，可随时删
└─ feiying.log     日志
```

换机器时把 `config.json` 拷过去即可，数据源不用重填。想换目录就设环境变量 `FEIYING_HOME`。

## 接口

所有接口都支持 `?src=<源id>` 指定源：

```
GET    /api/health                     运行状态
GET    /api/sources                    源列表
POST   /api/sources                    {"base_url":"..."} 或 {"builtin":true}
PATCH  /api/sources/<id>               改名
DELETE /api/sources/<id>               删除
POST   /api/sources/<id>/active        切换
GET    /api/vod?ac=&pg=&t=&wd=&h=      数据代理（参数原样透传）
GET    /api/cats                       分类 + 每个分类的真实条数
GET    /api/search?wd=演员+分类         多词 AND 搜索
GET    /api/sync?hours=24              增量更新
GET    /api/cache  DELETE /api/cache   缓存统计 / 清理
```

## 说明

本程序不托管、不转存、不分发任何视频文件，只做「按你填的接口取数据并渲染」。接口内容与使用方式请自行确保合规，只接入你有权访问的数据源。

## 许可

MIT
