Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
晴天906
dr_py
提交
f68e867a
dr_py
项目概览
晴天906
/
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,发现更多精彩内容 >>
提交
f68e867a
编写于
10月 18, 2022
作者:
H
hjdhnx
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
优化drpy(道长)聚搜的js装载速度
上级
204c2ce6
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
26 addition
and
1 deletion
+26
-1
base/rules.db
base/rules.db
+0
-0
controllers/vod.py
controllers/vod.py
+26
-1
未找到文件。
base/rules.db
浏览文件 @
f68e867a
无法预览此类型文件
controllers/vod.py
浏览文件 @
f68e867a
...
@@ -25,7 +25,7 @@ import ujson
...
@@ -25,7 +25,7 @@ import ujson
vod
=
Blueprint
(
"vod"
,
__name__
)
vod
=
Blueprint
(
"vod"
,
__name__
)
def
search_one
(
rule
,
wd
,
before
:
str
=
''
):
def
search_one
_py
(
rule
,
wd
,
before
:
str
=
''
):
t1
=
time
()
t1
=
time
()
if
not
before
:
if
not
before
:
with
open
(
'js/模板.js'
,
encoding
=
'utf-8'
)
as
f
:
with
open
(
'js/模板.js'
,
encoding
=
'utf-8'
)
as
f
:
...
@@ -45,6 +45,31 @@ def search_one(rule, wd, before: str = ''):
...
@@ -45,6 +45,31 @@ def search_one(rule, wd, before: str = ''):
print
(
f
'
{
rule
}
发生错误:
{
e
}
'
)
print
(
f
'
{
rule
}
发生错误:
{
e
}
'
)
return
None
return
None
def
search_one
(
rule
,
wd
,
before
:
str
=
''
):
t1
=
time
()
if
not
before
:
with
open
(
'js/模板.js'
,
encoding
=
'utf-8'
)
as
f
:
before
=
f
.
read
().
split
(
'export'
)[
0
]
end_code
=
"""
\n
if (rule.模板 && muban.hasOwnProperty(rule.模板)) {rule = Object.assign(muban[rule.模板], rule);}"""
js_path
=
f
'js/
{
rule
}
.js'
ctx
=
Context
()
try
:
with
open
(
js_path
,
encoding
=
'utf-8'
)
as
f2
:
jscode
=
f2
.
read
()
jscode
=
before
+
jscode
+
end_code
# print(jscode)
ctx
.
eval
(
jscode
)
js_ret
=
ctx
.
get
(
'rule'
)
ruleDict
=
ujson
.
loads
(
js_ret
.
json
())
ruleDict
[
'id'
]
=
rule
# 把路由请求的id装到字典里,后面播放嗅探才能用
logger
.
info
(
f
'规则
{
rule
}
装载耗时:
{
get_interval
(
t1
)
}
毫秒'
)
cms
=
CMS
(
ruleDict
,
db
,
RuleClass
,
PlayParse
,
cfg
)
data
=
cms
.
searchContent
(
wd
,
show_name
=
True
)
return
data
except
Exception
as
e
:
logger
.
info
(
f
'
{
e
}
'
)
return
R
.
failed
(
'爬虫规则加载失败'
)
def
multi_search2
(
wd
):
def
multi_search2
(
wd
):
t1
=
time
()
t1
=
time
()
lsg
=
storage_service
()
lsg
=
storage_service
()
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录