Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
仰淮
dr_py
提交
2c5189e4
dr_py
项目概览
仰淮
/
dr_py
与 Fork 源项目一致
Fork自
晚风拂柳颜 / dr_py
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
dr_py
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
2c5189e4
编写于
8月 25, 2022
作者:
H
hjdhnx
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
支持远程载入规则
上级
8b55047d
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
14 addition
and
9 deletion
+14
-9
app.py
app.py
+2
-2
pycms.json
pycms.json
+3
-3
utils/parser.py
utils/parser.py
+9
-4
未找到文件。
app.py
浏览文件 @
2c5189e4
...
...
@@ -45,13 +45,14 @@ def index(): # put application's code here
@
app
.
route
(
'/vod'
)
def
vod
():
rule
=
getParmas
(
'rule'
)
ext
=
getParmas
(
'ext'
)
if
not
rule
:
return
jsonify
(
error
.
failed
(
'规则字段必填'
))
if
not
rule
in
rule_list
:
msg
=
f
'仅支持以下规则:
{
","
.
join
(
rule_list
)
}
'
return
jsonify
(
error
.
failed
(
msg
))
js_path
=
f
'js/
{
rule
}
.js'
js_path
=
f
'js/
{
rule
}
.js'
if
not
ext
.
startswith
(
'http'
)
else
ext
ctx
,
js_code
=
parser
.
runJs
(
js_path
)
rule
=
ctx
.
eval
(
'rule'
)
cms
=
CMS
(
rule
)
...
...
@@ -63,7 +64,6 @@ def vod():
filter
=
getParmas
(
'filter'
)
t
=
getParmas
(
't'
)
pg
=
getParmas
(
'pg'
)
ext
=
getParmas
(
'ext'
)
ids
=
getParmas
(
'ids'
)
q
=
getParmas
(
'q'
)
...
...
pycms.json
浏览文件 @
2c5189e4
...
...
@@ -2,7 +2,7 @@
"key"
:
"dr_yanaifei"
,
"name"
:
"鸭奈飞"
,
"type"
:
1
,
"api"
:
"http://192.168.10.99:9000/vod?rule=鸭奈飞"
,
"api"
:
"http://192.168.10.99:9000/vod?rule=鸭奈飞
&ext=https://gitcode.net/qq_32394351/dr_py/-/raw/master/js/鸭奈飞.js
"
,
"searchable"
:
1
,
"quickSearch"
:
1
,
"filterable"
:
1
...
...
@@ -11,7 +11,7 @@
"key"
:
"dr_lmys"
,
"name"
:
"蓝莓影视"
,
"type"
:
1
,
"api"
:
"http://192.168.10.99:9000/vod?rule=蓝莓影视"
,
"api"
:
"http://192.168.10.99:9000/vod?rule=蓝莓影视
&ext=https://gitcode.net/qq_32394351/dr_py/-/raw/master/js/蓝莓影视.js
"
,
"searchable"
:
0
,
"quickSearch"
:
0
,
"filterable"
:
1
...
...
@@ -20,7 +20,7 @@
"key"
:
"dr_555"
,
"name"
:
"555影视"
,
"type"
:
1
,
"api"
:
"http://192.168.10.99:9000/vod?rule=555影视"
,
"api"
:
"http://192.168.10.99:9000/vod?rule=555影视
&ext=https://gitcode.net/qq_32394351/dr_py/-/raw/master/js/555影视.js
"
,
"searchable"
:
1
,
"quickSearch"
:
1
,
"filterable"
:
1
...
...
utils/parser.py
浏览文件 @
2c5189e4
...
...
@@ -5,6 +5,8 @@
# Date : 2022/8/25
import
os
import
requests
from
flask
import
make_response
,
jsonify
from
functools
import
partial
# 这玩意儿能锁定一个函数的参数
import
subprocess
...
...
@@ -19,10 +21,13 @@ def runJs(jsPath):
# base_path = os.path.dirname(os.path.abspath(__file__)) # 当前文件所在目录
# base_path = os.path.dirname(os.getcwd()) # 当前主程序所在工作目录
# base_path = os.path.dirname(os.path.abspath('.')) # 上级目录
base_path
=
os
.
path
.
dirname
(
os
.
path
.
abspath
(
os
.
path
.
dirname
(
__file__
)))
# 上级目录
js_path
=
os
.
path
.
join
(
base_path
,
jsPath
)
with
open
(
js_path
,
'r'
,
encoding
=
'UTF-8'
)
as
fp
:
js_code
=
fp
.
read
()
if
str
(
jsPath
).
startswith
(
'http'
):
jscode
=
requests
.
get
(
jsPath
).
text
else
:
base_path
=
os
.
path
.
dirname
(
os
.
path
.
abspath
(
os
.
path
.
dirname
(
__file__
)))
# 上级目录
js_path
=
os
.
path
.
join
(
base_path
,
jsPath
)
with
open
(
js_path
,
'r'
,
encoding
=
'UTF-8'
)
as
fp
:
js_code
=
fp
.
read
()
# print(js_code)
loader
=
execjs
.
compile
(
js_code
)
return
loader
,
js_code
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录