Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
iqingyuan
dr_py
提交
a0062877
dr_py
项目概览
iqingyuan
/
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,发现更多精彩内容 >>
提交
a0062877
编写于
9月 25, 2022
作者:
H
hjdhnx
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
解析优化
上级
7a332bda
变更
6
显示空白变更内容
内联
并排
Showing
6 changed file
with
67 addition
and
8 deletion
+67
-8
controllers/parse.py
controllers/parse.py
+4
-2
jiexi/酷云.js
jiexi/酷云.js
+15
-0
jiexi/鸿途.js
jiexi/鸿途.js
+14
-0
js/rules.py
js/rules.py
+13
-2
js/解析.conf
js/解析.conf
+5
-4
templates/config.txt
templates/config.txt
+16
-0
未找到文件。
controllers/parse.py
浏览文件 @
a0062877
...
...
@@ -80,11 +80,13 @@ def parse_home(filename):
return
R
.
failed
(
f
'解析失败:
{
realUrl
}
'
)
if
isinstance
(
realUrl
,
PyJsString
):
realUrl
=
parseText
(
str
(
realUrl
))
if
not
realUrl
or
realUrl
==
url
:
return
R
.
failed
(
f
'解析失败'
,
extra
=
{
'from'
:
realUrl
})
# print(realUrl)
if
str
(
realUrl
).
startswith
(
'redirect://'
):
return
redirect
(
realUrl
.
split
(
'redirect://'
)[
1
])
return
R
.
success
(
f
'
{
filename
}
解析成功'
,
realUrl
,{
'time'
:
f
'
{
get_interval
(
t1
)
}
毫秒'
})
return
R
.
success
(
f
'
{
filename
}
解析成功'
,
realUrl
,{
'time'
:
f
'
{
get_interval
(
t1
)
}
毫秒'
,
'from'
:
url
})
except
Exception
as
e
:
msg
=
f
'
{
filename
}
解析出错:
{
e
}
'
logger
.
info
(
msg
)
return
R
.
failed
(
msg
,
extra
=
{
'time'
:
f
'
{
get_interval
(
t1
)
}
毫秒'
})
\ No newline at end of file
return
R
.
failed
(
msg
,
extra
=
{
'time'
:
f
'
{
get_interval
(
t1
)
}
毫秒'
,
'from'
:
url
})
\ No newline at end of file
jiexi/酷云.js
0 → 100644
浏览文件 @
a0062877
let
jxUrl
=
'
http://api.kunyu77.com/api.php/provide/parserUrl?url=
'
;
fetch_params
.
headers
.
Referer
=
jxUrl
;
fetch_params
.
headers
[
'
User-Agent
'
]
=
"
Dalvik/2.1.0
"
;
try
{
// realUrl = null;
let
html
=
request
(
jxUrl
+
vipUrl
);
log
(
html
);
realUrl
=
jsp
.
pjfh
(
html
,
'
$..url
'
);
realUrl
=
重定向
(
realUrl
);
log
(
'
解析到真实播放地址:
'
+
realUrl
);
}
catch
(
e
)
{
log
(
'
解析发生错误:
'
+
e
.
message
);
realUrl
=
vipUrl
;
}
\ No newline at end of file
jiexi/鸿途.js
0 → 100644
浏览文件 @
a0062877
let
jxUrl
=
'
https://h5.freejson.xyz/player/analysis.php?v=
'
;
fetch_params
.
headers
.
Referer
=
jxUrl
;
try
{
// realUrl = null;
let
html
=
request
(
jxUrl
+
vipUrl
);
log
(
html
);
//realUrl = jsp.pjfh(html,'$..url');
realUrl
=
html
.
match
(
/var urls = "
(
.*
?)
"/
)[
1
];
log
(
'
解析到真实播放地址:
'
+
realUrl
);
}
catch
(
e
)
{
log
(
'
解析发生错误:
'
+
e
.
message
);
realUrl
=
vipUrl
;
}
\ No newline at end of file
js/rules.py
浏览文件 @
a0062877
...
...
@@ -102,8 +102,8 @@ def jxTxt2Json(text:str,host:str):
jxs
.
append
({
'name'
:
dt
[
0
],
'url'
:
dt
[
1
],
'type'
:
dt
[
2
]
if
len
(
dt
)
>
2
else
0
,
'ua'
:
dt
[
3
]
if
len
(
dt
)
>
3
else
UA
,
'type'
:
dt
[
2
]
if
len
(
dt
)
>
2
and
dt
[
2
]
else
0
,
'ua'
:
dt
[
3
]
if
len
(
dt
)
>
3
and
dt
[
3
]
else
UA
,
})
except
Exception
as
e
:
logger
.
info
(
f
'解析行有错误:
{
e
}
'
)
...
...
@@ -120,9 +120,20 @@ def getJxs(path='js',host=None):
虾米,https://dm.xmflv.com:4433/?url=
"""
f1
.
write
(
msg
)
base_path
=
'jiexi'
# 自建解析目录
os
.
makedirs
(
base_path
,
exist_ok
=
True
)
file_name
=
os
.
listdir
(
base_path
)
file_name
=
list
(
filter
(
lambda
x
:
str
(
x
).
endswith
(
'.js'
)
and
str
(
x
).
find
(
'模板'
)
<
0
,
file_name
))
# print(file_name)
jx_list
=
[
file
.
replace
(
'.js'
,
''
)
for
file
in
file_name
]
# print(file_name)
# print(jx_list)
jx_str
=
'
\n
'
.
join
([
jx
+
',{{host}}'
+
f
'/parse/api/
{
jx
}
.js?url=,1'
for
jx
in
jx_list
])
# print(jx_str)
with
open
(
f
'
{
path
}
/解析.conf'
,
encoding
=
'utf-8'
)
as
f
:
text
=
f
.
read
()
text
=
jx_str
+
'
\n
'
+
text
jxs
=
jxTxt2Json
(
text
,
host
)
with
open
(
custom_jx
,
encoding
=
'utf-8'
)
as
f2
:
text
=
f2
.
read
()
...
...
js/解析.conf
浏览文件 @
a0062877
# 0123,对应,普通解析,json解析,并发多json解析,聚合解析,参数3不填默认0
# flags是线路名称标识,会自动拦截并走以下的解析
# 名称,链接,类型,ua (ua不填默认 Mozilla/5.0) 可以手动填 Dart/2.14 (dart:io)
轮询,
Sequence
,
2
并发,
Parallel
,
2
#
轮询,Sequence,2
#
并发,Parallel,2
# 聚合,Demo,3
# 快看,http://api.8a5.cn/parse/kuaikan/de.php?url=,1
# 钢铁侠,https://json.freejx.in/?url=,1
# 绿叶,https://hc.izny.cn/json.php?url=,1
# 无名1,http://api.ckflv.cn/?url=,1
无名
1
,{{
host
}}/
parse
/
api
/无名.
js
?
url
=,
1
# 无名1,{{host}}/parse/api/无名.js?url=,1
91
,
http
://
91
fanli
.
top
/
m3u8
/?
url
=
BT5V
,
https
://
rx
.
bt5v
.
com
/
json
/
jsonindex
.
php
/?
url
=,
1
# 查询,https://chaxun.truechat365.com/?url= # 这个解析真的牛逼,只能电脑看
# llq,https://hc.izny.cn/json.php?url=,1
江湖,{{
host
}}/
parse
/
api
/江湖.
js
?
url
=,
1
#
江湖,{{host}}/parse/api/江湖.js?url=,1
左岸,
https
://
jx
.
bozrc
.
com
:
4433
/
player
/?
url
=
GGTV
搜集,
https
://
play
.
fuqizhishi
.
com
/
juhe
/
API
.
php
?
appkey
=
caijijuhe220902
&
url
=,
1
,
CY
,
https
://
vip
.
cyu0
.
cn
/
home
/
api
?
type
=
ys
&
uid
=
1353484
&
key
=
efopqwABCLOTVYZ278
&
url
=,
1
...
...
templates/config.txt
浏览文件 @
a0062877
...
...
@@ -51,6 +51,22 @@
"header": {
"User-Agent": "Mozilla/5.0"
}
},
{
"name": "轮询",
"type": 2,
"url": "Sequence",
"header": {
"User-Agent": "Mozilla/5.0"
}
},
{
"name": "并发",
"type": 2,
"url": "Parallel",
"header": {
"User-Agent": "Mozilla/5.0"
}
},
{% for jx in jxs %}
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录