feiying 1.0.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- feiying-1.0.1/LICENSE +21 -0
- feiying-1.0.1/MANIFEST.in +6 -0
- feiying-1.0.1/PKG-INFO +119 -0
- feiying-1.0.1/README.md +96 -0
- feiying-1.0.1/pyproject.toml +41 -0
- feiying-1.0.1/setup.cfg +4 -0
- feiying-1.0.1/src/feiying/__init__.py +8 -0
- feiying-1.0.1/src/feiying/__main__.py +7 -0
- feiying-1.0.1/src/feiying/app.py +862 -0
- feiying-1.0.1/src/feiying/catalog.json +254 -0
- feiying-1.0.1/src/feiying/cli.py +472 -0
- feiying-1.0.1/src/feiying/maccms_source.py +227 -0
- feiying-1.0.1/src/feiying/server.py +55 -0
- feiying-1.0.1/src/feiying/source.py +612 -0
- feiying-1.0.1/src/feiying/static/icon-180.png +0 -0
- feiying-1.0.1/src/feiying/static/icon-192.png +0 -0
- feiying-1.0.1/src/feiying/static/icon-512.png +0 -0
- feiying-1.0.1/src/feiying/static/index.html +1719 -0
- feiying-1.0.1/src/feiying/static/manifest.webmanifest +17 -0
- feiying-1.0.1/src/feiying/static/media/c1.mp4 +0 -0
- feiying-1.0.1/src/feiying/static/media/c2.mp4 +0 -0
- feiying-1.0.1/src/feiying/static/media/c3.mp4 +0 -0
- feiying-1.0.1/src/feiying/static/media/c4.mp4 +0 -0
- feiying-1.0.1/src/feiying/static/media/c5.mp4 +0 -0
- feiying-1.0.1/src/feiying/static/media/c6.mp4 +0 -0
- feiying-1.0.1/src/feiying/static/media/hls1/index.m3u8 +7 -0
- feiying-1.0.1/src/feiying/static/media/hls1/seg0.ts +0 -0
- feiying-1.0.1/src/feiying/static/media/hls2/index.m3u8 +7 -0
- feiying-1.0.1/src/feiying/static/media/hls2/seg0.ts +0 -0
- feiying-1.0.1/src/feiying/static/media/hls3/index.m3u8 +7 -0
- feiying-1.0.1/src/feiying/static/media/hls3/seg0.ts +0 -0
- feiying-1.0.1/src/feiying/static/media/hls4/index.m3u8 +7 -0
- feiying-1.0.1/src/feiying/static/media/hls4/seg0.ts +0 -0
- feiying-1.0.1/src/feiying/static/media/hls5/index.m3u8 +7 -0
- feiying-1.0.1/src/feiying/static/media/hls5/seg0.ts +0 -0
- feiying-1.0.1/src/feiying/static/media/hls6/index.m3u8 +7 -0
- feiying-1.0.1/src/feiying/static/media/hls6/seg0.ts +0 -0
- feiying-1.0.1/src/feiying/static/poster/p1.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p10.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p11.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p12.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p13.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p14.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p15.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p16.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p17.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p18.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p19.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p2.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p20.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p21.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p22.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p23.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p24.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p25.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p26.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p27.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p28.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p29.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p3.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p30.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p31.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p32.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p33.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p34.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p35.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p36.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p4.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p5.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p6.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p7.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p8.jpg +0 -0
- feiying-1.0.1/src/feiying/static/poster/p9.jpg +0 -0
- feiying-1.0.1/src/feiying/static/vendor/hls.min.js +2 -0
- feiying-1.0.1/src/feiying/static/vendor/hls.min.js.gz +0 -0
- feiying-1.0.1/src/feiying.egg-info/PKG-INFO +119 -0
- feiying-1.0.1/src/feiying.egg-info/SOURCES.txt +80 -0
- feiying-1.0.1/src/feiying.egg-info/dependency_links.txt +1 -0
- feiying-1.0.1/src/feiying.egg-info/entry_points.txt +2 -0
- feiying-1.0.1/src/feiying.egg-info/not-zip-safe +1 -0
- feiying-1.0.1/src/feiying.egg-info/requires.txt +3 -0
- feiying-1.0.1/src/feiying.egg-info/top_level.txt +1 -0
feiying-1.0.1/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 feiying
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
feiying-1.0.1/PKG-INFO
ADDED
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: feiying
|
|
3
|
+
Version: 1.0.1
|
|
4
|
+
Summary: 飞影 · MacCMS 播放器外壳,多数据源,一条命令自建
|
|
5
|
+
Author: feiying
|
|
6
|
+
License: MIT
|
|
7
|
+
Project-URL: Homepage, https://a3e8ccb225cfa33ec.app.workbuddy.host/?sharecode=EK2CY4UHDI
|
|
8
|
+
Keywords: maccms,vod,player,flask,self-hosted,termux
|
|
9
|
+
Classifier: Programming Language :: Python :: 3
|
|
10
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
11
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
12
|
+
Classifier: Operating System :: Android
|
|
13
|
+
Classifier: Environment :: Web Environment
|
|
14
|
+
Classifier: Framework :: Flask
|
|
15
|
+
Classifier: Topic :: Multimedia :: Video
|
|
16
|
+
Requires-Python: >=3.8
|
|
17
|
+
Description-Content-Type: text/markdown
|
|
18
|
+
License-File: LICENSE
|
|
19
|
+
Requires-Dist: flask>=2.0
|
|
20
|
+
Requires-Dist: requests>=2.20
|
|
21
|
+
Requires-Dist: waitress>=2.0
|
|
22
|
+
Dynamic: license-file
|
|
23
|
+
|
|
24
|
+
# 飞影
|
|
25
|
+
|
|
26
|
+
一个跑在自己设备上的 MacCMS 播放器外壳。程序本身**不带任何片单**:你填哪个接口地址,它就显示哪个源的内容;首页、分类、详情、播放、搜索、24 小时缓存与增量更新都由它负责。
|
|
27
|
+
|
|
28
|
+
- 多数据源,右上角一键切换,各源缓存互不干扰
|
|
29
|
+
- 手机 / 电脑 / 电视盒子都能开,浏览器访问即可,不用装 App
|
|
30
|
+
- 不用 Docker、不用数据库、不用编译
|
|
31
|
+
|
|
32
|
+
## 安装
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
pip install feiying
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
想装在独立环境里(推荐,避免污染系统 Python):
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
pipx install feiying
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Android 的 Termux 里:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
pkg install python
|
|
48
|
+
pip install feiying
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## 启动
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
feiying start
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
打开 <http://127.0.0.1:8080>。第一次是空白页,两种开始方式:
|
|
58
|
+
|
|
59
|
+
- 点「载入内置演示源」先看效果(36 部本地演示片,能点进详情、能播)
|
|
60
|
+
- 粘贴你自己的 MacCMS 接口地址(形如 `https://xxx.com/api.php/provide/vod/`),点保存
|
|
61
|
+
|
|
62
|
+
手机和电脑连同一个 WiFi 时,用 `feiying status` 里显示的「同一WiFi」地址就能在电脑上打开。
|
|
63
|
+
|
|
64
|
+
## 常用命令
|
|
65
|
+
|
|
66
|
+
| 命令 | 作用 |
|
|
67
|
+
|---|---|
|
|
68
|
+
| `feiying` | 状态一览 |
|
|
69
|
+
| `feiying start` | 后台启动 |
|
|
70
|
+
| `feiying start -f` | 前台启动,Ctrl+C 停止 |
|
|
71
|
+
| `feiying stop` | 停止 |
|
|
72
|
+
| `feiying restart` | 重启 |
|
|
73
|
+
| `feiying status` | 是否在跑、端口、版本、数据源、缓存 |
|
|
74
|
+
| `feiying log -f` | 实时日志 |
|
|
75
|
+
| `feiying port 9000` | 换端口并重启 |
|
|
76
|
+
| `feiying config` | 查看数据源配置 |
|
|
77
|
+
| `feiying cache` | 清服务端缓存 |
|
|
78
|
+
| `feiying update` | 升级到最新版 |
|
|
79
|
+
| `feiying open` | 用浏览器打开 |
|
|
80
|
+
|
|
81
|
+
## 数据放在哪
|
|
82
|
+
|
|
83
|
+
`~/.feiying/`,升级或卸载包都不会动它:
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
~/.feiying/
|
|
87
|
+
├─ config.json 数据源配置 ← 要备份就备份它
|
|
88
|
+
├─ settings.json 端口等本机设置
|
|
89
|
+
├─ cache/ 磁盘缓存,可随时删
|
|
90
|
+
└─ feiying.log 日志
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
换机器时把 `config.json` 拷过去即可,数据源不用重填。想换目录就设环境变量 `FEIYING_HOME`。
|
|
94
|
+
|
|
95
|
+
## 接口
|
|
96
|
+
|
|
97
|
+
所有接口都支持 `?src=<源id>` 指定源:
|
|
98
|
+
|
|
99
|
+
```
|
|
100
|
+
GET /api/health 运行状态
|
|
101
|
+
GET /api/sources 源列表
|
|
102
|
+
POST /api/sources {"base_url":"..."} 或 {"builtin":true}
|
|
103
|
+
PATCH /api/sources/<id> 改名
|
|
104
|
+
DELETE /api/sources/<id> 删除
|
|
105
|
+
POST /api/sources/<id>/active 切换
|
|
106
|
+
GET /api/vod?ac=&pg=&t=&wd=&h= 数据代理(参数原样透传)
|
|
107
|
+
GET /api/cats 分类 + 每个分类的真实条数
|
|
108
|
+
GET /api/search?wd=演员+分类 多词 AND 搜索
|
|
109
|
+
GET /api/sync?hours=24 增量更新
|
|
110
|
+
GET /api/cache DELETE /api/cache 缓存统计 / 清理
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
## 说明
|
|
114
|
+
|
|
115
|
+
本程序不托管、不转存、不分发任何视频文件,只做「按你填的接口取数据并渲染」。接口内容与使用方式请自行确保合规,只接入你有权访问的数据源。
|
|
116
|
+
|
|
117
|
+
## 许可
|
|
118
|
+
|
|
119
|
+
MIT
|
feiying-1.0.1/README.md
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# 飞影
|
|
2
|
+
|
|
3
|
+
一个跑在自己设备上的 MacCMS 播放器外壳。程序本身**不带任何片单**:你填哪个接口地址,它就显示哪个源的内容;首页、分类、详情、播放、搜索、24 小时缓存与增量更新都由它负责。
|
|
4
|
+
|
|
5
|
+
- 多数据源,右上角一键切换,各源缓存互不干扰
|
|
6
|
+
- 手机 / 电脑 / 电视盒子都能开,浏览器访问即可,不用装 App
|
|
7
|
+
- 不用 Docker、不用数据库、不用编译
|
|
8
|
+
|
|
9
|
+
## 安装
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
pip install feiying
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
想装在独立环境里(推荐,避免污染系统 Python):
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
pipx install feiying
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
Android 的 Termux 里:
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
pkg install python
|
|
25
|
+
pip install feiying
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## 启动
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
feiying start
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
打开 <http://127.0.0.1:8080>。第一次是空白页,两种开始方式:
|
|
35
|
+
|
|
36
|
+
- 点「载入内置演示源」先看效果(36 部本地演示片,能点进详情、能播)
|
|
37
|
+
- 粘贴你自己的 MacCMS 接口地址(形如 `https://xxx.com/api.php/provide/vod/`),点保存
|
|
38
|
+
|
|
39
|
+
手机和电脑连同一个 WiFi 时,用 `feiying status` 里显示的「同一WiFi」地址就能在电脑上打开。
|
|
40
|
+
|
|
41
|
+
## 常用命令
|
|
42
|
+
|
|
43
|
+
| 命令 | 作用 |
|
|
44
|
+
|---|---|
|
|
45
|
+
| `feiying` | 状态一览 |
|
|
46
|
+
| `feiying start` | 后台启动 |
|
|
47
|
+
| `feiying start -f` | 前台启动,Ctrl+C 停止 |
|
|
48
|
+
| `feiying stop` | 停止 |
|
|
49
|
+
| `feiying restart` | 重启 |
|
|
50
|
+
| `feiying status` | 是否在跑、端口、版本、数据源、缓存 |
|
|
51
|
+
| `feiying log -f` | 实时日志 |
|
|
52
|
+
| `feiying port 9000` | 换端口并重启 |
|
|
53
|
+
| `feiying config` | 查看数据源配置 |
|
|
54
|
+
| `feiying cache` | 清服务端缓存 |
|
|
55
|
+
| `feiying update` | 升级到最新版 |
|
|
56
|
+
| `feiying open` | 用浏览器打开 |
|
|
57
|
+
|
|
58
|
+
## 数据放在哪
|
|
59
|
+
|
|
60
|
+
`~/.feiying/`,升级或卸载包都不会动它:
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
~/.feiying/
|
|
64
|
+
├─ config.json 数据源配置 ← 要备份就备份它
|
|
65
|
+
├─ settings.json 端口等本机设置
|
|
66
|
+
├─ cache/ 磁盘缓存,可随时删
|
|
67
|
+
└─ feiying.log 日志
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
换机器时把 `config.json` 拷过去即可,数据源不用重填。想换目录就设环境变量 `FEIYING_HOME`。
|
|
71
|
+
|
|
72
|
+
## 接口
|
|
73
|
+
|
|
74
|
+
所有接口都支持 `?src=<源id>` 指定源:
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
GET /api/health 运行状态
|
|
78
|
+
GET /api/sources 源列表
|
|
79
|
+
POST /api/sources {"base_url":"..."} 或 {"builtin":true}
|
|
80
|
+
PATCH /api/sources/<id> 改名
|
|
81
|
+
DELETE /api/sources/<id> 删除
|
|
82
|
+
POST /api/sources/<id>/active 切换
|
|
83
|
+
GET /api/vod?ac=&pg=&t=&wd=&h= 数据代理(参数原样透传)
|
|
84
|
+
GET /api/cats 分类 + 每个分类的真实条数
|
|
85
|
+
GET /api/search?wd=演员+分类 多词 AND 搜索
|
|
86
|
+
GET /api/sync?hours=24 增量更新
|
|
87
|
+
GET /api/cache DELETE /api/cache 缓存统计 / 清理
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## 说明
|
|
91
|
+
|
|
92
|
+
本程序不托管、不转存、不分发任何视频文件,只做「按你填的接口取数据并渲染」。接口内容与使用方式请自行确保合规,只接入你有权访问的数据源。
|
|
93
|
+
|
|
94
|
+
## 许可
|
|
95
|
+
|
|
96
|
+
MIT
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=68", "wheel"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "feiying"
|
|
7
|
+
version = "1.0.1"
|
|
8
|
+
description = "飞影 · MacCMS 播放器外壳,多数据源,一条命令自建"
|
|
9
|
+
readme = "README.md"
|
|
10
|
+
requires-python = ">=3.8"
|
|
11
|
+
license = { text = "MIT" }
|
|
12
|
+
authors = [{ name = "feiying" }]
|
|
13
|
+
keywords = ["maccms", "vod", "player", "flask", "self-hosted", "termux"]
|
|
14
|
+
classifiers = [
|
|
15
|
+
"Programming Language :: Python :: 3",
|
|
16
|
+
"License :: OSI Approved :: MIT License",
|
|
17
|
+
"Operating System :: POSIX :: Linux",
|
|
18
|
+
"Operating System :: Android",
|
|
19
|
+
"Environment :: Web Environment",
|
|
20
|
+
"Framework :: Flask",
|
|
21
|
+
"Topic :: Multimedia :: Video",
|
|
22
|
+
]
|
|
23
|
+
dependencies = [
|
|
24
|
+
"flask>=2.0",
|
|
25
|
+
"requests>=2.20",
|
|
26
|
+
"waitress>=2.0",
|
|
27
|
+
]
|
|
28
|
+
|
|
29
|
+
[project.scripts]
|
|
30
|
+
feiying = "feiying.cli:main"
|
|
31
|
+
|
|
32
|
+
[project.urls]
|
|
33
|
+
Homepage = "https://a3e8ccb225cfa33ec.app.workbuddy.host/?sharecode=EK2CY4UHDI"
|
|
34
|
+
|
|
35
|
+
[tool.setuptools]
|
|
36
|
+
package-dir = { "" = "src" }
|
|
37
|
+
include-package-data = true
|
|
38
|
+
zip-safe = false
|
|
39
|
+
|
|
40
|
+
[tool.setuptools.packages.find]
|
|
41
|
+
where = ["src"]
|
feiying-1.0.1/setup.cfg
ADDED