Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
peater12
dr_py
提交
00309386
dr_py
项目概览
peater12
/
dr_py
落后 Fork 源项目 2 个版本
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,体验更适合开发者的 AI 搜索 >>
提交
00309386
编写于
9月 30, 2022
作者:
H
hjdhnx
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
增加drt引擎残废版
上级
f3797e10
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
318 addition
and
32 deletion
+318
-32
base/custom.conf
base/custom.conf
+1
-1
txt/muban/drpy模板.js
txt/muban/drpy模板.js
+63
-31
txt/pluto/drT.js
txt/pluto/drT.js
+189
-0
txt/pluto/drpy.js
txt/pluto/drpy.js
+65
-0
未找到文件。
base/custom.conf
浏览文件 @
00309386
...
...
@@ -20,7 +20,7 @@
"filterable"
:
0
},
# 缓存js
{
"key"
:
"drpy_zbk"
,
"name"
:
"真不卡(drpy)"
,
"type"
:
3
,
"api"
:
"js_drpy_zbk"
,
"searchable"
:
1
,
"quickSearch"
:
1
,
"filterable"
:
1
,
"ext"
:
"{{host}}/txt/
muban/drpy模板
.js"
},
{
"key"
:
"drpy_zbk"
,
"name"
:
"真不卡(drpy)"
,
"type"
:
3
,
"api"
:
"js_drpy_zbk"
,
"searchable"
:
1
,
"quickSearch"
:
1
,
"filterable"
:
1
,
"ext"
:
"{{host}}/txt/
pluto/drpy
.js"
},
{
"key"
:
"dr_MXONE"
,
"name"
:
"MXONE(道长)"
,
"type"
:
1
,
"api"
:
"{{host}}/vod?rule=MXONE&ext=txt/js/tg/MXONE.js"
,
"searchable"
:
2
,
"quickSearch"
:
0
,
"filterable"
:
0
},
{
"key"
:
"dr_Nike影视"
,
"name"
:
"Nike影视(道长)"
,
"type"
:
1
,
"api"
:
"{{host}}/vod?rule=Nike影视&ext=txt/js/tg/Nike影视.js"
,
"searchable"
:
2
,
"quickSearch"
:
0
,
"filterable"
:
0
},
{
"key"
:
"dr_TV云播"
,
"name"
:
"TV云播(道长)"
,
"type"
:
1
,
"api"
:
"{{host}}/vod?rule=TV云播&ext=txt/js/tg/TV云播.js"
,
"searchable"
:
2
,
"quickSearch"
:
0
,
"filterable"
:
0
},
...
...
txt/muban/drpy模板.js
浏览文件 @
00309386
import
ch
from
'
./cheerio.min.js
'
;
import
'
./uri.min.js
'
;
// import Uri from
'./uri.min.js';
// var URI = require('urijs');
// import 模板 from 'https://gitcode.net/qq_32394351/dr_py/-/raw/master/js/模板.js'
// var rule = Object.assign(模板.首图2,{
// host: 'https://www.zbkk.net',
// });
import
template
from
'
https://gitcode.net/qq_32394351/dr_py/-/raw/master/txt/pluto/template-web.js
'
var
ahtml
=
template
.
render
(
'
hi, <%=value%>.
'
,
{
value
:
'
aui
'
});
console
.
log
(
ahtml
);
const
key
=
'
drpy_zbk
'
;
// 二进制数据流
// let d = req('https://www.baidu.com/favicon.ico', {
// buffer: 1
// });
// // header
// console.log(JSON.stringify(d.headers));
// // 图片
// let array = [];
// for(var i in d.content){
// array.push(d.content[i]);
// }
// console.log(array.length);
// let outbuf = new Uint8Array(array);
// console.log(outbuf.byteLength);
// base64
let
d
=
req
(
'
https://www.baidu.com/favicon.ico
'
,
{
buffer
:
2
});
// header
console
.
log
(
JSON
.
stringify
(
d
.
headers
));
// 图片 base64
console
.
log
(
d
.
content
);
let
rule
=
{
title
:
'
真不卡
'
,
host
:
'
https://www.zbkk.net
'
,
...
...
@@ -168,29 +198,30 @@ function clearItem(k){
* @returns {*}
*/
function
urljoin
(
fromPath
,
nowPath
)
{
fromPath
=
fromPath
||
''
;
nowPath
=
nowPath
||
''
;
try
{
// import Uri from './uri.min.js';
// var Uri = require('./uri.min.js');
// eval(request('https://cdn.bootcdn.net/ajax/libs/URI.js/1.19.11/URI.min.js'));
// let new_uri = URI(nowPath, fromPath);
let
new_uri
=
Uri
(
nowPath
,
fromPath
);
new_uri
=
new_uri
.
toString
();
// console.log(new_uri);
// return fromPath + nowPath
return
new_uri
}
catch
(
e
)
{
console
.
log
(
'
urljoin发生错误:
'
+
e
.
message
);
if
(
nowPath
.
startsWith
(
'
http
'
)){
return
nowPath
}
if
(
nowPath
.
startsWith
(
'
/
'
)){
return
getHome
(
fromPath
)
+
nowPath
}
return
fromPath
+
nowPath
}
return
joinUrl
(
fromPath
,
nowPath
);
// fromPath = fromPath||'';
// nowPath = nowPath||'';
// try {
// // import Uri from './uri.min.js';
// // var Uri = require('./uri.min.js');
// // eval(request('https://cdn.bootcdn.net/ajax/libs/URI.js/1.19.11/URI.min.js'));
// // let new_uri = URI(nowPath, fromPath);
// let new_uri = Uri(nowPath, fromPath);
// new_uri = new_uri.toString();
// // console.log(new_uri);
// // return fromPath + nowPath
// return new_uri
// }
// catch (e) {
// console.log('urljoin发生错误:'+e.message);
// if(nowPath.startsWith('http')){
// return nowPath
// }if(nowPath.startsWith('/')){
// return getHome(fromPath)+nowPath
// }
// return fromPath+nowPath
// }
}
/**
...
...
@@ -445,7 +476,7 @@ function homeVodParse(homeVodObj){
};
d
.
push
(
vod
);
}
catch
(
e
)
{
}
}
...
...
@@ -465,7 +496,7 @@ function homeVodParse(homeVodObj){
try
{
img
=
pD
(
item
,
p
[
2
],
MY_URL
);
}
catch
(
e
)
{
}
let
desc
=
pdfh
(
item
,
p
[
3
]);
let
links
=
[];
...
...
@@ -626,7 +657,7 @@ function detailParse(detailObj){
let
html
=
detailObj
.
html
||
''
;
MY_URL
=
url
;
// setItem('MY_URL',MY_URL);
console
.
log
(
MY_URL
);
//
console.log(MY_URL);
if
(
p
===
'
*
'
){
vod
.
vod_play_from
=
'
道长在线
'
;
vod
.
vod_remarks
=
detailUrl
;
...
...
@@ -676,8 +707,8 @@ function detailParse(detailObj){
if
(
p
.
重定向
&&
p
.
重定向
.
startsWith
(
'
js:
'
)){
html
=
eval
(
p
.
重定向
.
replace
(
'
js:
'
,
''
));
}
console
.
log
(
2
);
//
console.log(2);
if
(
p
.
tabs
){
let
p_tab
=
p
.
tabs
.
split
(
'
;
'
)[
0
];
console
.
log
(
p_tab
);
...
...
@@ -698,7 +729,7 @@ console.log(2);
}
vod
.
vod_play_from
=
playFrom
.
join
(
vod_play_from
);
console
.
log
(
3
);
//
console.log(3);
let
vod_play_url
=
'
$$$
'
;
let
vod_tab_list
=
[];
if
(
p
.
lists
){
...
...
@@ -729,7 +760,7 @@ console.log(3);
}
vod
.
vod_play_url
=
vod_tab_list
.
join
(
vod_play_url
);
}
console
.
log
(
JSON
.
stringify
(
vod
));
//
console.log(JSON.stringify(vod));
return
JSON
.
stringify
({
list
:
[
vod
]
})
...
...
@@ -755,6 +786,7 @@ function playParse(playObj){
eval
(
rule
.
lazy
.
replace
(
'
js:
'
).
trim
());
lazy_play
=
typeof
(
input
)
===
'
object
'
?
input
:{
parse
:
1
,
jx
:
1
,
url
:
input
};
}
catch
(
e
)
{
...
...
txt/pluto/drT.js
0 → 100644
浏览文件 @
00309386
// drT.js
// 2022/09/30 write by hjdhnx
// Licensed under the MIT license.
(
function
()
{
"
use strict
"
;
var
drT
=
{
name
:
"
drT
"
,
version
:
"
1.0.0
"
,
templateSettings
:
{
evaluate
:
/
\{\{([\s\S]
+
?(\}?)
+
)\}\}
/g
,
interpolate
:
/
\{\{([\s\S]
+
?)\}\}
/g
,
// 变量渲染
encode
:
/
\{\{
@
([\s\S]
+
?)\}\}
/g
,
// 变量自动url编码
use
:
/
\{\{
#
([\s\S]
+
?)\}\}
/g
,
useParams
:
/
(
^|
[^\w
$
])
def
(?:\.
|
\[[\'\"])([\w
$
\.]
+
)(?:[\'\"]\])?\s
*
\:\s
*
([\w
$
\.]
+|
\"[^\"]
+
\"
|
\'[^\']
+
\'
|
\{[^\}]
+
\})
/g
,
define
:
/
\{\{
##
\s
*
([\w\.
$
]
+
)\s
*
(\:
|=
)([\s\S]
+
?)
#
\}\}
/g
,
defineParams
:
/^
\s
*
([\w
$
]
+
)
:
([\s\S]
+
)
/
,
conditional
:
/
\{\{\?(\?)?\s
*
([\s\S]
*
?)\s
*
\}\}
/g
,
// ? if ?? else if ?? else
iterate
:
/
\{\{
~
\s
*
(?:\}\}
|
([\s\S]
+
?)\s
*
\:\s
*
([\w
$
]
+
)\s
*
(?:\:\s
*
([\w
$
]
+
))?\s
*
\}\})
/g
,
varname
:
"
fl
"
,
strip
:
true
,
append
:
true
,
selfcontained
:
false
,
doNotSkipEncoded
:
false
},
template
:
undefined
,
//fn, compile template
compile
:
undefined
,
//fn, for express
log
:
true
},
_globals
;
drT
.
encodeHTMLSource
=
function
(
doNotSkipEncoded
)
{
var
encodeHTMLRules
=
{
"
&
"
:
"
&
"
,
"
<
"
:
"
<
"
,
"
>
"
:
"
>
"
,
'
"
'
:
"
"
"
,
"
'
"
:
"
'
"
,
"
/
"
:
"
/
"
},
matchHTML
=
doNotSkipEncoded
?
/
[
&<>"'
\/]
/g
:
/&
(?!
#
?\w
+;
)
|<|>|"|'|
\/
/g
;
return
function
(
code
)
{
return
code
?
code
.
toString
().
replace
(
matchHTML
,
function
(
m
)
{
return
encodeHTMLRules
[
m
]
||
m
;})
:
""
;
};
};
_globals
=
(
function
(){
return
this
||
(
0
,
eval
)(
"
this
"
);
}());
/* istanbul ignore else */
if
(
typeof
module
!==
"
undefined
"
&&
module
.
exports
)
{
module
.
exports
=
drT
;
}
else
if
(
typeof
define
===
"
function
"
&&
define
.
amd
)
{
define
(
function
(){
return
drT
;});
}
else
{
_globals
.
drT
=
drT
;
}
var
startend
=
{
append
:
{
start
:
"
'+(
"
,
end
:
"
)+'
"
,
startencode
:
"
'+encodeHTML(
"
},
split
:
{
start
:
"
';out+=(
"
,
end
:
"
);out+='
"
,
startencode
:
"
';out+=encodeHTML(
"
}
},
skip
=
/$^/
;
function
resolveDefs
(
c
,
block
,
def
)
{
return
((
typeof
block
===
"
string
"
)
?
block
:
block
.
toString
())
.
replace
(
c
.
define
||
skip
,
function
(
m
,
code
,
assign
,
value
)
{
if
(
code
.
indexOf
(
"
def.
"
)
===
0
)
{
code
=
code
.
substring
(
4
);
}
if
(
!
(
code
in
def
))
{
if
(
assign
===
"
:
"
)
{
if
(
c
.
defineParams
)
value
.
replace
(
c
.
defineParams
,
function
(
m
,
param
,
v
)
{
def
[
code
]
=
{
arg
:
param
,
text
:
v
};
});
if
(
!
(
code
in
def
))
def
[
code
]
=
value
;
}
else
{
new
Function
(
"
def
"
,
"
def['
"
+
code
+
"
']=
"
+
value
)(
def
);
}
}
return
""
;
})
.
replace
(
c
.
use
||
skip
,
function
(
m
,
code
)
{
if
(
c
.
useParams
)
code
=
code
.
replace
(
c
.
useParams
,
function
(
m
,
s
,
d
,
param
)
{
if
(
def
[
d
]
&&
def
[
d
].
arg
&&
param
)
{
var
rw
=
(
d
+
"
:
"
+
param
).
replace
(
/'|
\\
/g
,
"
_
"
);
def
.
__exp
=
def
.
__exp
||
{};
def
.
__exp
[
rw
]
=
def
[
d
].
text
.
replace
(
new
RegExp
(
"
(^|[^
\\
w$])
"
+
def
[
d
].
arg
+
"
([^
\\
w$])
"
,
"
g
"
),
"
$1
"
+
param
+
"
$2
"
);
return
s
+
"
def.__exp['
"
+
rw
+
"
']
"
;
}
});
var
v
=
new
Function
(
"
def
"
,
"
return
"
+
code
)(
def
);
return
v
?
resolveDefs
(
c
,
v
,
def
)
:
v
;
});
}
function
unescape
(
code
)
{
return
code
.
replace
(
/
\\(
'|
\\)
/g
,
"
$1
"
).
replace
(
/
[\r\t\n]
/g
,
"
"
);
}
drT
.
template
=
function
(
tmpl
,
c
,
def
)
{
c
=
c
||
drT
.
templateSettings
;
var
cse
=
c
.
append
?
startend
.
append
:
startend
.
split
,
needhtmlencode
,
sid
=
0
,
indv
,
str
=
(
c
.
use
||
c
.
define
)
?
resolveDefs
(
c
,
tmpl
,
def
||
{})
:
tmpl
;
// console.log(str);
let
beforeCode
=
''
;
if
(
str
.
match
(
c
.
interpolate
||
skip
)){
let
inter_codes
=
str
.
match
(
c
.
interpolate
||
skip
);
let
inter_dict
=
{};
inter_codes
.
forEach
(
item
=>
{
item
.
replace
(
c
.
interpolate
||
skip
,
function
(
m
,
code
)
{
let
varname
=
code
.
split
(
'
.
'
)[
0
];
if
(
!
inter_dict
.
hasOwnProperty
(
varname
)){
let
beginCode
=
`if(typeof(
${
varname
}
)==='undefined'){
${
varname
}
={}}`
;
inter_dict
[
varname
]
=
beginCode
;
}
if
(
!
inter_dict
.
hasOwnProperty
(
code
)){
let
beginCode
=
`if(typeof(
${
code
}
)==='undefined'){
${
code
}
=''};`
;
inter_dict
[
code
]
=
beginCode
;
}
});
});
let
beginCode
=
Object
.
values
(
inter_dict
).
join
(
'
\n
'
);
// console.log(beginCode);
beforeCode
+=
beginCode
;
}
str
=
beforeCode
+
(
"
var out='
"
+
(
c
.
strip
?
str
.
replace
(
/
(
^|
\r
|
\n)\t
* +| +
\t
*
(\r
|
\n
|$
)
/g
,
"
"
)
.
replace
(
/
\r
|
\n
|
\t
|
\/\*[\s\S]
*
?\*\/
/g
,
""
):
str
)
.
replace
(
/'|
\\
/g
,
"
\\
$&
"
)
.
replace
(
c
.
encode
||
skip
,
function
(
m
,
code
)
{
needhtmlencode
=
true
;
return
cse
.
startencode
+
unescape
(
code
)
+
cse
.
end
;
})
.
replace
(
c
.
interpolate
||
skip
,
function
(
m
,
code
)
{
let
varname
=
code
.
split
(
'
.
'
)[
0
];
// console.log(varname === code);
// console.log(`varname:${varname},code:${code}`);
if
(
varname
===
code
){
let
res
=
cse
.
start
+
`JSON.stringify(
${
unescape
(
code
)}
)`
+
cse
.
end
;
// console.log(res);
return
res
}
return
cse
.
start
+
unescape
(
code
)
+
cse
.
end
;
})
.
replace
(
c
.
conditional
||
skip
,
function
(
m
,
elsecase
,
code
)
{
return
elsecase
?
(
code
?
"
';}else if(
"
+
unescape
(
code
)
+
"
){out+='
"
:
"
';}else{out+='
"
)
:
(
code
?
"
';if(
"
+
unescape
(
code
)
+
"
){out+='
"
:
"
';}out+='
"
);
})
.
replace
(
c
.
iterate
||
skip
,
function
(
m
,
iterate
,
vname
,
iname
)
{
if
(
!
iterate
)
return
"
';} } out+='
"
;
sid
+=
1
;
indv
=
iname
||
"
i
"
+
sid
;
iterate
=
unescape
(
iterate
);
return
"
';var arr
"
+
sid
+
"
=
"
+
iterate
+
"
;if(arr
"
+
sid
+
"
){var
"
+
vname
+
"
,
"
+
indv
+
"
=-1,l
"
+
sid
+
"
=arr
"
+
sid
+
"
.length-1;while(
"
+
indv
+
"
<l
"
+
sid
+
"
){
"
+
vname
+
"
=arr
"
+
sid
+
"
[
"
+
indv
+
"
+=1];out+='
"
;
})
.
replace
(
c
.
evaluate
||
skip
,
function
(
m
,
code
)
{
return
"
';
"
+
unescape
(
code
)
+
"
out+='
"
;
})
+
"
';return out;
"
)
.
replace
(
/
\n
/g
,
"
\\
n
"
).
replace
(
/
\t
/g
,
'
\\
t
'
).
replace
(
/
\r
/g
,
"
\\
r
"
)
.
replace
(
/
(\s
|;|
\}
|^|
\{)
out
\+
='';/g
,
'
$1
'
).
replace
(
/
\+
''/g
,
""
);
//.replace(/(\s|;|\}|^|\{)out\+=''\+/g,'$1out+=');
if
(
needhtmlencode
)
{
console
.
log
(
'
需要编码
'
);
console
.
log
(
c
.
doNotSkipEncoded
);
if
(
!
c
.
selfcontained
&&
_globals
&&
!
_globals
.
_encodeHTML
)
_globals
.
_encodeHTML
=
drT
.
encodeHTMLSource
(
c
.
doNotSkipEncoded
);
str
=
"
var encodeHTML = typeof _encodeHTML !== 'undefined' ? _encodeHTML : (
"
+
drT
.
encodeHTMLSource
.
toString
()
+
"
(
"
+
(
c
.
doNotSkipEncoded
||
''
)
+
"
));
"
+
str
;
console
.
log
(
str
);
}
else
{
console
.
log
(
'
不需要编码
'
);
}
console
.
log
(
c
.
varname
);
console
.
log
(
str
);
try
{
return
new
Function
(
c
.
varname
,
str
);
}
catch
(
e
)
{
/* istanbul ignore else */
console
.
log
(
e
.
message
);
if
(
typeof
console
!==
"
undefined
"
)
console
.
log
(
"
Could not create a template function:
"
+
str
);
throw
e
;
}
};
drT
.
compile
=
function
(
tmpl
,
def
)
{
return
drT
.
template
(
tmpl
,
null
,
def
);
};
drT
.
renderText
=
function
(
tmpl
,
dict
,
varname
){
varname
=
varname
||
''
;
if
(
varname
){
drT
.
templateSettings
.
varname
=
varname
;
}
dict
=
dict
||
{};
return
drT
.
compile
(
tmpl
)(
dict
);
}
}());
\ No newline at end of file
txt/pluto/drpy.js
浏览文件 @
00309386
...
...
@@ -5,7 +5,70 @@ import ch from './cheerio.min.js';
// var rule = Object.assign(模板.首图2,{
// host: 'https://www.zbkk.net',
// });
// import template from 'https://gitcode.net/qq_32394351/dr_py/-/raw/master/txt/pluto/template-web.js'
// import 'https://gitcode.net/qq_32394351/dr_py/-/raw/master/txt/pluto/template-web.js'
const
key
=
'
drpy_zbk
'
;
function
myTem
(
Tem
,
data
)
{
// 检索需要填充的地方
var
reg
=
/{{
(\w
+
)
}}/
;
var
res
=
reg
.
exec
(
Tem
)
// 返回伪数组 第一个为{{name}} 第二个为 name,没有返回 null,
while
(
res
)
{
// 替换,如果有多个同名填充位,都会被填充
Tem
=
Tem
.
replace
(
res
[
0
],
data
[
res
[
1
]])
// 再次检索
res
=
reg
.
exec
(
Tem
)
}
return
Tem
}
var
TemplateEngine
=
function
(
html
,
options
)
{
var
re
=
/]+
\)?
%>/g
,
reExp
=
/
(
^
(
)?(
if|for|else|switch|case|break|{|}
))(
.*
)?
/g
,
code
=
'
var r=[];
\n
'
,
cursor
=
0
;
var
add
=
function
(
line
,
js
)
{
js
?
(
code
+=
line
.
match
(
reExp
)
?
line
+
'
\n
'
:
'
r.push(
'
+
line
+
'
);
\n
'
)
:
(
code
+=
line
!=
''
?
'
r.push("
'
+
line
.
replace
(
/"/g
,
'
\\
"
'
)
+
'
");
\n
'
:
''
);
return
add
;
}
while
(
match
=
re
.
exec
(
html
))
{
console
.
log
(
match
)
add
(
html
.
slice
(
cursor
,
match
.
index
))(
match
[
1
],
true
);
cursor
=
match
.
index
+
match
[
0
].
length
;
}
add
(
html
.
substr
(
cursor
,
html
.
length
-
cursor
));
code
+=
'
return r.join("");
'
;
return
new
Function
(
code
.
replace
(
/
[\r\t\n]
/g
,
''
)).
apply
(
options
);
}
function
init_test
(){
// eval(request('https://gitcode.net/qq_32394351/dr_py/-/raw/master/txt/pluto/template-web.js'));
// eval(request('http://192.168.10.99:5705/txt/pluto/template-web.js'));
// eval(request('http://192.168.10.99:5705/txt/pluto/doT.js'));
eval
(
request
(
'
http://192.168.10.99:5705/txt/pluto/drT.js
'
));
// var ahtml = template.render('hi, <%=value%>.', {value: 'aui'});
// console.log(ahtml);
console
.
log
(
typeof
(
drT
))
// drT.templateSettings.varname = 'fl';
// drT.templateSettings.interpolate = /\{\{([\s\S]+?)\}\}/g;
// var ahtml = drT.compile('hi, {{fl.value}}哈哈.{{fl.value}}')({value: 'aui'});
// console.log(ahtml);
// ahtml = drT.compile('hi, {{fl}}哈哈.{{fl}}')({sort: 1,cate:'movie'});
// console.log(ahtml);
//
console
.
log
(
drT
.
renderText
(
'
hi, {{fl}}哈哈.{{fl}}
'
,{
sort
:
1
,
cate
:
'
movie
'
},
'
fl
'
))
}
// 二进制数据流
// let d = req('https://www.baidu.com/favicon.ico', {
...
...
@@ -68,6 +131,7 @@ let rule = {
* quickjs发生一次崩溃后除非重启软件,否则该源后续操作点击二级都没有数据
* setItem系列存在问题,用的公用变量实现没法持久化,需要一个数据库存储持久化,下次进来也能获取储存的cookie
* 电脑看日志调试
adb tcpip 5555
adb connect 192.168.10.192
adb devices -l
adb logcat -c
...
...
@@ -801,6 +865,7 @@ function playParse(playObj){
*/
function
init
(
ext
)
{
console
.
log
(
"
init
"
);
init_test
();
}
/**
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录