上传文件至 lib
This commit is contained in:
parent
6fce234166
commit
2c692ecf9e
BIN
lib/XBPQ.jar
Normal file
BIN
lib/XBPQ.jar
Normal file
Binary file not shown.
77
lib/alishare.ebook.txt
Normal file
77
lib/alishare.ebook.txt
Normal file
@ -0,0 +1,77 @@
|
||||
zAajGfX1cxE 中信出版图书 1
|
||||
kgCYrLpLgiZ 机械工业出版社6000册 1
|
||||
EmhjMiwBrNj 清华大学出版社2237册 1
|
||||
3XEmnpcKYwd 新知文库 1
|
||||
XpsFL9BcCbN 北京国家图书馆 1
|
||||
BPkNEszAXjr 一万本图书馆PDF 1
|
||||
STfm58hKPBu 湖湘文库 1
|
||||
LZvTLPW8fbF 亲子教育
|
||||
gfsRY67BRcb 历史传记
|
||||
vbULbViB6jg 婚恋两性
|
||||
nk24tt7C2nt 婚恋家庭
|
||||
nk24tt7C2nt 婚恋家庭
|
||||
LYHR2C7oGrN 官场商战
|
||||
h3qDZvSNJaH 影视时尚
|
||||
1Wq86hBek8P 心理励志
|
||||
erF8fL1E9SR 思想文化
|
||||
qzBiRPyuKCU 恐怖悬疑
|
||||
5b6xedKYxDB 推理侦探
|
||||
5Do3YzWGsdT 文学名著
|
||||
h8nj4ZxEhTV 旅游休闲
|
||||
W8uEmn2UEm4 武侠仙侠
|
||||
C6FdSeriQAg 武侠小说
|
||||
Q2Uyg5yXCTp 漫画绘本
|
||||
4CP6kP21RE1 玄幻奇幻
|
||||
AbmTF4S9R2u 玄幻小说
|
||||
S2r9Q7dofdw 社科经典
|
||||
Tkz17pPJ54n 科幻小说
|
||||
ZCma3m8tkqu 综合书籍
|
||||
PJc6BcfuRwn 美容养生
|
||||
1vp4gtVqHVV 职场理财
|
||||
TMXRKiUGzMe 青春校园
|
||||
vEdkxEJocnb 科教类
|
||||
AM8mtK1botT 平台类
|
||||
NkKQg1a7qM9 小说类
|
||||
1th3c74q1cu 漫画类
|
||||
auNq9mXGJ8N 新书类
|
||||
xPX311pWQP8 杂志类
|
||||
43sAoXEduDZ 我的小书屋01
|
||||
Rj2xnX7GLUW 我的小书屋02
|
||||
XMbjpWzN4Jj 我的小书屋03
|
||||
V69EqCbMHST 我的小书屋04
|
||||
zpRyQG5Sykg 我的小书屋05
|
||||
6TZTQve3haL 我的小书屋06
|
||||
FsWBsXLDyMn 全球推理小说大集合 1
|
||||
D9fe45j1eHa ePUBee整站电子书库01
|
||||
ct8cPiYpscj ePUBee整站电子书库02
|
||||
a9rZPQKHfDu ePUBee整站电子书库03
|
||||
h45mCPUZc3E ePUBee整站电子书库04
|
||||
bhDAK42pnSU ePUBee整站电子书库05
|
||||
jdPrqXLaXBU ePUBee整站电子书库06
|
||||
3exRgUFUPrv ePUBee整站电子书库07
|
||||
AMY3umXHQrH ePUBee整站电子书库08
|
||||
16ryTfdGrAP ePUBee整站电子书库09
|
||||
5W8EsnTsCRN ePUBee整站电子书库10
|
||||
D72AZeTnTVL ePUBee整站电子书库11
|
||||
Z4SyuRZZj8Z ePUBee整站电子书库12
|
||||
xMCNaJvx7tk ePUBee整站电子书库13
|
||||
MK7LwGqokKF ePUBee整站电子书库14
|
||||
p9Lnskk2e2L ePUBee整站电子书库15
|
||||
pKEdszFRn2v ePUBee整站电子书库16
|
||||
7fKJ3VC7yWg ePUBee整站电子书库17
|
||||
QXMJVQzPJzG ePUBee整站电子书库18
|
||||
eTbXLxV5HZ3 ePUBee整站电子书库19
|
||||
wvdQyRer63P ePUBee整站电子书库20
|
||||
LrLMDHopskR ePUBee整站电子书库21
|
||||
jr4xL8NvHW9 ePUBee整站电子书库22
|
||||
5tPVRsXdBk4 ePUBee整站电子书库23
|
||||
iMBCRc32UNM ePUBee整站电子书库24
|
||||
S8NodisNHcU ePUBee整站电子书库25
|
||||
4TRTbyZrKki ePUBee整站电子书库26
|
||||
iYZMj7CFPks 广东省立中山图书馆「A-G」
|
||||
unEV8t3QfTc 广东省立中山图书馆「H-K」
|
||||
uT7hzi7CnvP 广东省立中山图书馆「L-N」
|
||||
U2fcieUVKuY 广东省立中山图书馆「O-Q」
|
||||
h3s9tXNJxQK 广东省立中山图书馆「R-T」
|
||||
SXZ17uS7oju 广东省立中山图书馆「U-X」
|
||||
GwnQxogFss3 广东省立中山图书馆「Y-Z」
|
21
lib/alishare.txt
Normal file
21
lib/alishare.txt
Normal file
@ -0,0 +1,21 @@
|
||||
self 我的阿里云盘
|
||||
cdqCsAWD9wC?pwd=6666 Tacit0924-总合集 1 updated_at DESC
|
||||
ZHNChQfiPfk 杜比视界电影
|
||||
e27BPgDwxeA 4KREMUX电影
|
||||
XUH7r6BZuML 老K分享|电影1剧集1
|
||||
qZ4f1i2EFW2 老K分享|电影2剧集2
|
||||
ohJ68NV7iFw 老K分享|高清美剧10G一集
|
||||
4ydLxf7VgH7 平凡中的 1
|
||||
gf2GebXnZHh 诺兰全集 1
|
||||
dieULBdYP3D YYDSVIP|YYDSVIP 1
|
||||
UuHi9PeYSVz YYDSVIP|YYDSVip-综艺
|
||||
v9To3HC6vhs YYDSVIP|YYDSVip-综合
|
||||
uWa9gbM3RJ7 优源阁-资源总合集 1
|
||||
ftMhRaKUfYp 掌灯者|港剧
|
||||
MLWPRHRt9W3 掌灯者|台剧
|
||||
8Fg4TNsd2A2 掌灯者|大陆剧1
|
||||
ar8Kg9azw1S 掌灯者|大陆剧2
|
||||
GMYSz3AHFaA 掌灯者|大陆剧3
|
||||
cmy3KCTRpFA 合集|李连杰电影合集
|
||||
hMsDJ6dsGxQ 合集|成龙电影合集
|
||||
fSNHaYST47s 合集|纪录片合集2
|
1
lib/alist.min.js
vendored
Normal file
1
lib/alist.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
BIN
lib/allinone.tar.xz
Normal file
BIN
lib/allinone.tar.xz
Normal file
Binary file not shown.
1
lib/allinone.tar.xz.md5
Normal file
1
lib/allinone.tar.xz.md5
Normal file
@ -0,0 +1 @@
|
||||
9fc3fb5864026cc980eff36fec34a215
|
87
lib/biptv.txt
Normal file
87
lib/biptv.txt
Normal file
@ -0,0 +1,87 @@
|
||||
CCTV1,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EI0Rkc6neBYgfpoJ1yud8Fw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNPpqgHe3PQ5GNQoO-yUgA8C%2CEND
|
||||
CCTV1,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EI0Rkc6neBYgfpoJ1yud8Fw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CCTV2,http://otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EcnoJZd_sZxCC6bZYZh4R6g%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CCTV3,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226456/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E_6GNVcVOz9Xub8CclyMRUg%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNOIR_8g_qYRqpV5wTQqRILi%2CEND
|
||||
CCTV4,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226470/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0wP1dRMt9qCzHdvA65wh1w%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMcuN2HH7RLPyPHWOUWhSMk%2CEND
|
||||
CCTV4,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EBFJ5gRpm8ntK8JEFPZOhLQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CCTV5,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226454/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ErKwB8Qqtvssoy-K7GEgesQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNOIR_8g_qYRqpV5wTQqRILi%2CEND
|
||||
CCTV5+,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226458/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Em70vyfVI_MkrcLYjHWnqOA%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNlS0O1LA8iGydXPYujpRue%2CEND
|
||||
CCTV5+,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226894/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EevWZ0zmguDsOY_Mf3SM5TA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CCTV6,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226453/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ex56LEwufYqPdJkUNYhbNCw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNOH2PzEhAK60LI_FWtVxfVS%2CEND
|
||||
CCTV7,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226234/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EutDC7HLJc_gC0YdIDr7oig%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNPOHuulzlCcw92vP3vgYa4n%2CEND
|
||||
CCTV7,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E2bEV_zkW1hRnWmsZq6rlbw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CCTV8,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226451/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EO_1NY-UghfdG_S28Bf_FPw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNO1anuaDcpMt0_BMig72trX%2CEND
|
||||
CCTV9,http://otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EgdZMBjOTdDWVEgovFkZoew%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CCTV10,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226449/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EzhRgoBfyoaW0eC2lnTJYAQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNOxqyo6ss4VuHKCaIhF4e3B%2CEND
|
||||
CCTV10,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Egbbk6OxyTS2utbJWm7Qw1w%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CCTV11,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0RcQQbNseiHvFO8XWf466A%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CCTV11,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226448/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eqfhzy1ZrFZrYrATDOB991A%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNOu522yjh6D1Z_dApuOt9eE%2CEND
|
||||
CCTV12,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226228/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E2knJCFLHz_HqfBZXNGeA1A%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMIlZ5z7o_ym15iMooogSvj%2CEND
|
||||
CCTV12,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E9nVa4WyKpuJgFy6Zh4TplQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CCTV13,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EqHPe9pEEWJ00hz1ArnRZVA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CCTV13,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226446/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EU-IJJyzlYeEElWsacI4JKw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMT7DWkynQtRPzNDJCOY_C_%2CEND
|
||||
CCTV14,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226229/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ey_UgKg-_uoDiTW1MNHptPg%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNLabf3bHEXv4444iiOs_Px%2CEND
|
||||
CCTV14,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EgtTqPYLE5COifF-qvYi2Ig%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CCTV15,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EWyklhmFh7oMx-lG1tNUcSQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CCTV15,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226444/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EFQ8BWVFffGkwLTLNv7CwFQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNM7I2coCeiP5K0pSIMZqcUB%2CEND
|
||||
CCTV16,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EX9goLRw26BM_r54des2PAw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNPt5W7-RovMDpE-7B-0PhHw%2CEND
|
||||
CCTV16,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EX9goLRw26BM_r54des2PAw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CCTV17,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226442/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EtihRNVe_x2y1Lgi_XWYeNw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNOl8OnsD1vPD0mhNmo98J3J%2CEND
|
||||
CCTV17,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EEkwQnoHNXRDb-IayWakK1A%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
CGTN,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226443/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ebu8iDniP_aAtg-APxKXKAA%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNOeLGc8fhipDF_paLm6VUd-%2CEND
|
||||
北京卫视,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226900/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EcYPi33WFyhvd6SjmqUKhJg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND
|
||||
北京卫视,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226436/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ElMQ3ov45VmhzipweN5VstQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNPg_yZ8DZHTaSU92MIl_o3b%2CEND
|
||||
深圳卫视,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226245/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EFvxuZ6Kfg6J67sArVd0LuA%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNO9YxM-C8gPFvQRk47-h2ok%2CEND
|
||||
湖北卫视,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226240/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ExfU_RR0RQok0w_xd7h22CQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNPVnDV2fEBphgm3TP7hAHBx%2CEND
|
||||
东方卫视,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226237/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EuOKqNaOUqqiJjXIfPoRPMQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNeqgYr1eA9ESriCOsl_DTz%2CEND
|
||||
浙江卫视,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226247/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eo6BokfP3WkB3SIXSrgvRBA%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNP3w4GkbU9L7iRQ8H2vgzhF%2CEND
|
||||
吉林卫视,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226533/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EicY_6znuOTlmMeE15TFEig%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNNUZpDp9cPVsM_M_ftJRVM%2CEND
|
||||
江苏卫视,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226242/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EJT6eqtJpcKnNhyUS90EOgw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNN1SxXwCt0S69Lq27ZMJpfR%2CEND
|
||||
山东卫视,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226244/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EycMz-PML_dQW8iLcNBkw7g%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMYCYLC04QAM6EBli1wTuET%2CEND
|
||||
黑龙江卫视,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226239/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EEHwpSHKc5p-bHJfhpIWFig%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNM5Y8rTELLykZJHp-bmY2YW%2CEND
|
||||
东南卫视,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226496/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EkZUfG47p98m2PZiCsgkhyQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNM5EcQIH6BiwZavlhPLb4oJ%2CEND
|
||||
江西卫视,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226243/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EfPpe3gkzCutYMoqOQQZNzA%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMVuW7agCgULnvgy9rhLyCH%2CEND
|
||||
云南卫视,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226543/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EzQy9f4DIExLCs810r0Q6Kw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNO_hnHaWpTsMQwR98VJGduo%2CEND
|
||||
辽宁卫视,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226488/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0dsu8dOBmGQQO7fSrvySew%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNN4l9PIxeExdzsncIMJiPZb%2CEND
|
||||
重庆卫视,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226518/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ey-ITbF7am-eD_R60rK2QcQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMWkDi37K3eowQvLymiiLyV%2CEND
|
||||
山西卫视,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226531/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EokFa56wMKUpB1vaIjEe92A%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNPoj5DNJHruOghC7vAQxinJ%2CEND
|
||||
海南卫视,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226574/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EZOP0PLu1-XG8_Ae0lTe9HQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNODcjESMU4f6yMuMuOuQbie%2CEND
|
||||
安徽卫视,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226490/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EcN5s_AlHugvAv9Pda6f9fA%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNOtRTFrO5eKiKNV40gMGHaS%2CEND
|
||||
甘肃卫视,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226545/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EPxObabIs3mLyPmSf2HHtqQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNBE3K16ZfzYGIqbP6z6cGJ%2CEND
|
||||
青海卫视,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226529/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ege4qzvU2ax15UdL3NFQ7AQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNdiWnhjH1amCOGECUhABr9%2CEND
|
||||
山东教育卫视[785*576],http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226526/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EEtk94qghXphElKOQlUC-Yw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNOpyxkKQ6N6FjQz-LrJwo0o%2CEND
|
||||
宁夏卫视,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226528/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E9-jWxE6tfiz7aO7MvbCY7Q%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMi3qn27U9rBeXpVrJ8eLy7%2CEND
|
||||
内蒙古卫视,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226530/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EHHMwHAFmEx4xxtZRlWhCrg%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMZe-zTYLW-Yz0RcFLVr37n%2CEND
|
||||
陕西卫视,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226532/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E6sNSqmLCqLFl_AJPBXp1qA%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNO6b4uKEI14SNy0LDiw52LH%2CEND
|
||||
广西卫视,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226534/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EpjsBggKPaCw3f-xlBWZWaQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMJYhPE64lykNkIsypBRZqO%2CEND
|
||||
厦门卫视[785*576],http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226542/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0HuqirkTe1cAUljwazjNGw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMvSOYesmmWPPy5i3xS4Rsb%2CEND
|
||||
三沙卫视,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226544/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eb2dn60YQRxhB5rAyOnrv0g%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNO_hnHaWpTsMQwR98VJGduo%2CEND
|
||||
新疆卫视,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226546/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ETtoZKRqwsL9SQjr1A0iH5g%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMREPnBLSH3b8pR7cnmo9am%2CEND
|
||||
西藏卫视,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226527/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EmHuqUIe0F51C4h6xZanhig%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMi3qn27U9rBeXpVrJ8eLy7%2CEND
|
||||
兵团卫视,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226541/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ESv-rH0nF41q6pxKZKeRnNA%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNN-56c_rnHTXQA4R-D0Dlau%2CEND
|
||||
延边卫视[1024*576],http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227045/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eq0D3NdTUN7FuRzr8eJsbQA%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNONS2RAhxb5u6NYaMGGM23S%2CEND
|
||||
康巴卫视[1024*576],http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227027/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EkHMvBpWz4rccMxNvSRekpQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNPtFfVFX0AVycM8b4Xmbcl4%2CEND
|
||||
嘉佳卡通,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226539/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EQDRyt1jaDU7f52NwPN526A%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNOLcRNi6C1PMX5tGrYl_SiR%2CEND
|
||||
茶频道,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226548/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ec1XXmbKOEhI6pFYCxtVG9A%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNOD3hCDGl7mDB_HDsnRfhB2%2CEND
|
||||
快乐垂钓,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226549/1.m3u8?GuardEncType=2&accountinfo=~~V2.0~RHz0NOpqUZZN1Iz6lVLkkg~_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNSiF8rKF1Pn2LepKMJ2cEG%2CEND
|
||||
超级电影,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226233/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EfPRR4mbRWhkCFuUCVm9THg%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNM4kysjLk_woYMRnu35KtBV%2CEND
|
||||
超级综艺,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226231/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ejm-KqHfTZezbm9C-325YiA%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNnfpAUC20DSCXUyGpDggnK%2CEND
|
||||
超级体育,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226232/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eg-EQHTrpbCOxNSgnFRbr4w%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMNhcQPODGVtsSVKlB7CbAh%2CEND
|
||||
金牌综艺,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227004/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EkcfszuSJNo6WZ8h7xrIswA%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMWi_zfgUXV5YnB6haFF-C2%2CEND
|
||||
北京IPTV 4K,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226550/1.m3u8?GuardEncType=2&accountinfo=~~V2.0~e2qS8h6u-xp3gd50vNr1sw~_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNPPFD3HVWEytEVyliOxehfe%2CEND
|
||||
北京国际,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226510/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EIfgL7tTUNqHAIdgvKuwj8A%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNPr9j5nfyiWS_jEXD6m401A%2CEND
|
||||
北京新闻,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226437/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EncK5uEAdYwWMsf8WJWI1mQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNO_LSIQh_h2P54Cz-MqgJqC%2CEND
|
||||
北京文艺,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226440/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EWrJcgMpdGPvZavpf4dmmrQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNhmwDsUZnvQgU5E5wiGA2g%2CEND
|
||||
北京体育休闲,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226438/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EeVAybrHg955d_IRT9e_uHQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMLCKqkSfuGOusJwBMwlCbz%2CEND
|
||||
北京影视,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226433/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EygquRbh9L0wUPRY53fsZWw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNO62IynDcU1yYDL1b4Xte8T%2CEND
|
||||
北京生活,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226514/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Es-PVNcPJsjr_oBdcXGT40g%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNMWvZ0r6eMXcXJOGrCpJiq1%2CEND
|
||||
北京财经,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226516/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eh9_SEkmWeMdS1TMnIILZgg%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNPIiicEW7OIvk1s-X-PXHqO%2CEND
|
||||
北京纪实科教,http://[2409:8087:1:20:20::29]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226434/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ejj3PtVjzl6ZzFdM-Vi1dmQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNPJa61jREJv4ZfZigyrxX0U%2CEND
|
||||
北京IPTV 淘电影,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226552/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EXOsrWMA-UCdUl1hQSR9EKw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNg3bzRax0E9tLmO9xgXVx8%2CEND
|
||||
北京IPTV 淘剧场,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226553/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EQaJ92NID2SpQlY6_VJVogg%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNOuQYJeiYEeFWTkFfE86Vq-%2CEND
|
||||
北京IPTV 淘娱乐,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226551/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ex0efg9fpenP8E8lWJUb5Lg%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNg3bzRax0E9tLmO9xgXVx8%2CEND
|
||||
北京IPTV 淘BABY,http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226554/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EN0sbBMpQv4sLsW5foy3YfA%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNg3bzRax0E9tLmO9xgXVx8%2CEND
|
||||
北京IPTV 萌宠TV,http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226555/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E_PpxWPtvSZRFtu_Ged_-vQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNO0istnBuoA2R9ODSCqyIyS%2CEND
|
||||
中国教育1台,http://[2409:8087:1:20:20::2a]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226494/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EB8MrpAzJ_Bw12HHVBcZO6g%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNONWWecbSKZXNjh_5hExtTC%2CEND
|
||||
中国教育2台[785*576],http://[2409:8087:1:20:20::2c]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226537/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E7AxXs4eTU2oiWrhopr9sHw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNxsM0Bor098BJglrhfEQTl%2CEND
|
||||
中国教育4台[785*576],http://[2409:8087:1:20:20::26]/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226557/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EBzZToIaOOoaa_jAUfhUQHQ%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNOD9BEmVSNbqSQpqXZxnxbk%2CEND
|
71
lib/bttt.json
Normal file
71
lib/bttt.json
Normal file
@ -0,0 +1,71 @@
|
||||
{
|
||||
"规则名": "BT天堂",
|
||||
"规则作者": "",
|
||||
"请求头参数": "PC_UA",
|
||||
"网页编码格式": "UTF-8",
|
||||
"图片是否需要代理": "0",
|
||||
"是否开启获取首页数据": "1",
|
||||
"首页推荐链接": "https://www.bttt11.com",
|
||||
"首页列表数组规则": "body&&.ul-imgtxt1",
|
||||
"首页片单列表数组规则": "li",
|
||||
"首页片单是否Jsoup写法": "1",
|
||||
"首页片单标题": "h3&&Text",
|
||||
"首页片单链接": "a&&href",
|
||||
"首页片单图片": "img&&src",
|
||||
"首页片单副标题": "span,-1&&Text",
|
||||
"首页片单链接加前缀": "https://www.bt-tt.com",
|
||||
"首页片单链接加后缀": "",
|
||||
"分类起始页码": "0",
|
||||
"分类链接": "https://www.bttt11.com/www.bt-tt.com/html/page-{cateId}-{catePg}.html",
|
||||
//"分类链接": "https://www.clgod.xyz/list/{catePg}-{cateId}-0-0.html",
|
||||
"分类名称": "畅影大陆电影&畅影港台电影&畅影欧美电影&畅影欧美剧&畅影日韩剧&畅影日韩电影&畅影动漫&畅影亚太剧&畅影亚太电影&畅影综艺&畅影纪录片",
|
||||
"分类名称替换词": "4&3&1&6&7&2&11&10&5&12&13",
|
||||
//"分类名称": "电影&动作&灵异&奇幻&宗教&励志&犯罪&功夫&喜剧&黑色&幽默&爱情&香港&纪录片&灾难&亲情&暴力&僵尸&丧尸&悬疑&人性&惊悚&血腥&武侠&剧情&历史&战争&经典&漫画&改编&恐怖&穿越&青春&黑帮&文艺&浪漫&同志&冒险&动画&演唱会",
|
||||
//"分类名称替换词": "0&1&2&3&4&5&6&7&8&10&11&12&1315&16&17&18&19&20&21&22&23&24&25&27&28&29&30&31&32&33&34&35&36&37&38&39&40&41&42",
|
||||
"筛选数据": {},
|
||||
"分类截取模式": "1",
|
||||
"分类列表数组规则": ".ul-imgtxt2&&li",
|
||||
"分类片单是否Jsoup写法": "1",
|
||||
"分类片单标题": "h3&&Text",
|
||||
"分类片单链接": "a&&href",
|
||||
"分类片单图片": "img&&src",
|
||||
"分类片单副标题": "span,-1--a&&Text!更新时间:",
|
||||
"分类片单链接加前缀": "https://www.bt-tt.com",
|
||||
"分类片单链接加后缀": "",
|
||||
"搜索请求头参数": "User-Agent$PC_UA",
|
||||
"搜索链接": "https://www.bt-tt.com/e/search/;post",
|
||||
"POST请求数据": "show=title,newstext&keyboard={wd}&searchtype=影视搜索",
|
||||
"搜索截取模式": "1",
|
||||
"搜索列表数组规则": ".ul-imgtxt2&&li",
|
||||
"搜索片单是否Jsoup写法": "1",
|
||||
"搜索片单图片": "img&&src",
|
||||
"搜索片单标题": "h3&&Text",
|
||||
"搜索片单链接": "a&&href",
|
||||
"搜索片单副标题": "span,-1--a&&Text!更新时间:",
|
||||
"搜索片单链接加前缀": "https://www.bt-tt.com",
|
||||
"搜索片单链接加后缀": "",
|
||||
"链接是否直接播放": "0",
|
||||
"直接播放链接加前缀": "",
|
||||
"直接播放链接加后缀": "",
|
||||
"直接播放直链视频请求头": "",
|
||||
"详情是否Jsoup写法": "0",
|
||||
"类型详情": "<p>◎类 别&&</p>",
|
||||
"年代详情": "<p>◎年 代&&</p>",
|
||||
"地区详情": "<p>◎产 地&&</p>",
|
||||
"演员详情": "",
|
||||
"简介详情": "",
|
||||
"线路列表数组规则": "",
|
||||
"线路标题": "",
|
||||
"播放列表数组规则": "body&&.container",
|
||||
"选集列表数组规则": "a[href^=magnet]||a[href^=ed2K]",
|
||||
"选集标题链接是否Jsoup写法": "1",
|
||||
"选集标题": "Text",
|
||||
"选集链接": "a&&href",
|
||||
"是否反转选集序列": "0",
|
||||
"选集链接加前缀": "",
|
||||
"选集链接加后缀": "",
|
||||
"分析MacPlayer": "0",
|
||||
"是否开启手动嗅探": "0",
|
||||
"手动嗅探视频链接关键词": ".mp4#.m3u8#.flv",
|
||||
"手动嗅探视频链接过滤词": ".html"
|
||||
}
|
1
lib/cheerio.min.js
vendored
Normal file
1
lib/cheerio.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
BIN
lib/clash2singbox.tar.xz
Normal file
BIN
lib/clash2singbox.tar.xz
Normal file
Binary file not shown.
1
lib/clash2singbox.tar.xz.md5
Normal file
1
lib/clash2singbox.tar.xz.md5
Normal file
@ -0,0 +1 @@
|
||||
0fcb7012659e992b9dbba447bdfb21b2
|
6191
lib/crypto-js.js
Normal file
6191
lib/crypto-js.js
Normal file
File diff suppressed because it is too large
Load Diff
1176
lib/douban.json
Normal file
1176
lib/douban.json
Normal file
File diff suppressed because it is too large
Load Diff
73
lib/drpy2.min.js
vendored
Normal file
73
lib/drpy2.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
773
lib/duboku.json
Normal file
773
lib/duboku.json
Normal file
@ -0,0 +1,773 @@
|
||||
{
|
||||
"author": "takagen99",
|
||||
"ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36",
|
||||
"homeUrl": "https://www.duboku.tv/",
|
||||
"dcVipFlag": "true",
|
||||
"dcPlayUrl": "true",
|
||||
"cateNode": "//ul[contains(@class,'nav-menu')]/li/a[contains(@href, 'vodtype')]",
|
||||
"cateName": "/text()",
|
||||
"cateId": "/@href",
|
||||
"cateIdR": "/vodtype/(\\w+).html",
|
||||
"cateManual": {
|
||||
"陆剧": "13",
|
||||
"日韩剧": "15",
|
||||
"短剧": "21",
|
||||
"英美剧": "16",
|
||||
"台泰剧": "14",
|
||||
"港剧": "20",
|
||||
"综艺": "3",
|
||||
"动漫": "4"
|
||||
},
|
||||
"homeVodNode": "//ul[contains(@class,'myui-vodlist')]/li/div/a",
|
||||
"homeVodName": "/@title",
|
||||
"homeVodId": "/@href",
|
||||
"homeVodIdR": "/voddetail/(\\w+).html",
|
||||
"homeVodImg": "/@data-original",
|
||||
"homeVodImgR": "\\S+(http\\S+)",
|
||||
"homeVodMark": "//span[contains(@class,'pic-text')]/text()",
|
||||
"cateUrl": "https://www.duboku.tv/vodshow/{cateId}-{area}-{by}------{catePg}---{year}.html",
|
||||
"cateVodNode": "//ul[contains(@class,'myui-vodlist')]/li/div/a",
|
||||
"cateVodName": "/@title",
|
||||
"cateVodId": "/@href",
|
||||
"cateVodIdR": "/voddetail/(\\w+).html",
|
||||
"cateVodImg": "/@data-original",
|
||||
"cateVodImgR": "\\S+(http\\S+)",
|
||||
"cateVodMark": "//span[contains(@class,'pic-text')]/text()",
|
||||
"dtUrl": "https://w.duboku.io/voddetail/{vid}.html",
|
||||
"dtNode": "//body",
|
||||
"dtName": "//div[contains(@class,'myui-content__thumb')]/a/@title",
|
||||
"dtNameR": "",
|
||||
"dtImg": "//div[contains(@class,'myui-content__thumb')]/a/img/@data-original",
|
||||
"dtImgR": "",
|
||||
"dtCate": "//div[contains(@class,'myui-content__detail')]/p/span[contains(text(), '分类')]/following-sibling::a/text()",
|
||||
"dtYear": "//div[contains(@class,'myui-content__detail')]/p/span[contains(text(), '年份')]/following-sibling::a/text()",
|
||||
"dtArea": "//div[contains(@class,'myui-content__detail')]/p/span[contains(text(), '地区')]/following-sibling::a/text()",
|
||||
"dtMark": "//div[contains(@class,'myui-content__detail')]/p/span[contains(text(), '更新')]/following-sibling::a/text()",
|
||||
"dtDirector": "//div[contains(@class,'myui-content__detail')]/p/span[contains(text(), '导演')]/following-sibling::a/text()",
|
||||
"dtActor": "//div[contains(@class,'myui-content__detail')]/p/span[contains(text(), '主演')]/following-sibling::a/text()",
|
||||
"dtDesc": "//div[contains(@class,'myui-content__detail')]/p/span[contains(text(), '简介')]/following-sibling::a/text()",
|
||||
"dtFromNode": "//ul[contains(@class,'nav-tabs')]/li/a",
|
||||
"dtFromName": "/text()",
|
||||
"dtFromNameR": "",
|
||||
"dtUrlNode": "//ul[contains(@class,'myui-content__list')]",
|
||||
"dtUrlSubNode": "/li/a",
|
||||
"dtUrlId": "/@href",
|
||||
"dtUrlIdR": "/vodplay/(\\S+).html",
|
||||
"dtUrlName": "/text()",
|
||||
"dtUrlNameR": "",
|
||||
|
||||
"playUrl": "https://w.duboku.io/vodplay/{playUrl}.html",
|
||||
"playUa": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36",
|
||||
"playReferer": "https://w.duboku.io/",
|
||||
"searchUrl": "https://w.duboku.io/index.php/ajax/suggest?mid=1&wd={wd}&limit=10",
|
||||
"scVodNode": "json:list",
|
||||
"scVodName": "name",
|
||||
"scVodId": "id",
|
||||
"scVodIdR": "",
|
||||
"scVodImg": "pic",
|
||||
"scVodMark": "",
|
||||
"filter": {
|
||||
"13": [
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "排序",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
},
|
||||
{
|
||||
"n": "人气",
|
||||
"v": "hits"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"14": [
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "排序",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
},
|
||||
{
|
||||
"n": "人气",
|
||||
"v": "hits"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"16": [
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "排序",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
},
|
||||
{
|
||||
"n": "人气",
|
||||
"v": "hits"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"15": [
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "排序",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
},
|
||||
{
|
||||
"n": "人气",
|
||||
"v": "hits"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"2": [
|
||||
{
|
||||
"key": "cateId",
|
||||
"name": "类型",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "陆剧",
|
||||
"v": "13"
|
||||
},
|
||||
{
|
||||
"n": "日韩剧",
|
||||
"v": "15"
|
||||
},
|
||||
{
|
||||
"n": "英美剧",
|
||||
"v": "16"
|
||||
},
|
||||
{
|
||||
"n": "台泰剧",
|
||||
"v": "14"
|
||||
},
|
||||
{
|
||||
"n": "港剧",
|
||||
"v": "20"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "内地",
|
||||
"v": "内地"
|
||||
},
|
||||
{
|
||||
"n": "韩国",
|
||||
"v": "韩国"
|
||||
},
|
||||
{
|
||||
"n": "香港",
|
||||
"v": "香港"
|
||||
},
|
||||
{
|
||||
"n": "台湾",
|
||||
"v": "台湾"
|
||||
},
|
||||
{
|
||||
"n": "美国",
|
||||
"v": "美国"
|
||||
},
|
||||
{
|
||||
"n": "英国",
|
||||
"v": "英国"
|
||||
},
|
||||
{
|
||||
"n": "巴西",
|
||||
"v": "巴西"
|
||||
},
|
||||
{
|
||||
"n": "西班牙",
|
||||
"v": "西班牙"
|
||||
},
|
||||
{
|
||||
"n": "泰国",
|
||||
"v": "泰国"
|
||||
},
|
||||
{
|
||||
"n": "德国",
|
||||
"v": "德国"
|
||||
},
|
||||
{
|
||||
"n": "法国",
|
||||
"v": "法国"
|
||||
},
|
||||
{
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
},
|
||||
{
|
||||
"n": "荷兰",
|
||||
"v": "荷兰"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "排序",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
},
|
||||
{
|
||||
"n": "人气",
|
||||
"v": "hits"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"3": [
|
||||
{
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "内地",
|
||||
"v": "内地"
|
||||
},
|
||||
{
|
||||
"n": "香港",
|
||||
"v": "香港"
|
||||
},
|
||||
{
|
||||
"n": "台湾",
|
||||
"v": "台湾"
|
||||
},
|
||||
{
|
||||
"n": "韩国",
|
||||
"v": "韩国"
|
||||
},
|
||||
{
|
||||
"n": "美国",
|
||||
"v": "美国"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "排序",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
},
|
||||
{
|
||||
"n": "人气",
|
||||
"v": "hits"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"4": [
|
||||
{
|
||||
"key": "area",
|
||||
"name": "地区",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "国产",
|
||||
"v": "国产"
|
||||
},
|
||||
{
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
},
|
||||
{
|
||||
"n": "美国",
|
||||
"v": "美国"
|
||||
},
|
||||
{
|
||||
"n": "法国",
|
||||
"v": "法国"
|
||||
},
|
||||
{
|
||||
"n": "其他",
|
||||
"v": "其他"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "排序",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
},
|
||||
{
|
||||
"n": "人气",
|
||||
"v": "hits"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"20": [
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "排序",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
},
|
||||
{
|
||||
"n": "人气",
|
||||
"v": "hits"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"21": [
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "排序",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
},
|
||||
{
|
||||
"n": "人气",
|
||||
"v": "hits"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "score"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
16
lib/feimaolive.json
Normal file
16
lib/feimaolive.json
Normal file
@ -0,0 +1,16 @@
|
||||
[
|
||||
|
||||
{"name":"范明明IPV6","url":"http://127.0.0.1:10079/c/3600/proxy/https://raw.githubusercontent.com/fanmingming/live/refs/heads/main/tv/m3u/ipv6.m3u"},
|
||||
{"name":"最强国内直播","url":"http://127.0.0.1:10079/c/3600/null/http://127.0.0.1:35456/tv.m3u"},
|
||||
{"name":"肥羊咪咕直播","url":"http://127.0.0.1:10079/c/3600/null/http://127.0.0.1:35456/migu.m3u"},
|
||||
{"name":"肥羊B站直播","url":"http://127.0.0.1:10079/c/3600/null/http://127.0.0.1:35456/bililive.m3u"},
|
||||
{"name":"肥羊虎牙一起看","url":"http://127.0.0.1:10079/c/3600/null/http://127.0.0.1:35456/huyayqk.m3u"},
|
||||
{"name":"肥羊斗鱼一起看","url":"http://127.0.0.1:10079/c/3600/null/http://127.0.0.1:35456/douyuyqk.m3u"},
|
||||
{"name":"肥羊YY轮播","url":"http://127.0.0.1:10079/c/3600/null/http://127.0.0.1:35456/yylunbo.m3u"},
|
||||
{"name":"Gather.电视直播","url":"https://tv.iill.top/m3u/Gather"},
|
||||
{"name":"Gather.网络直播","url":"https://tv.iill.top/m3u/Live"},
|
||||
{"name":"Gather.MyTV","url":"http://127.0.0.1:10079/c/60/proxy/https://tv.iill.top/m3u/MyTV"},
|
||||
{"name":"范明明OfficalSite","url":"http://127.0.0.1:10079/p/0/proxy/https://live.fanmingming.com/tv/m3u/global.m3u"},
|
||||
{"name":"范明明GitHub","url":"http://127.0.0.1:10079/c/3600/proxy/https://mirror.ghproxy.com/raw.githubusercontent.com/fanmingming/live/main/tv/m3u/global.m3u"},
|
||||
{"name":"范明明IPV6","url":"http://127.0.0.1:10079/c/3600/proxy/https://raw.githubusercontent.com/fanmingming/live/refs/heads/main/tv/m3u/ipv6.m3u"}
|
||||
]
|
BIN
lib/ffmpeg.dyn.tar.xz
Normal file
BIN
lib/ffmpeg.dyn.tar.xz
Normal file
Binary file not shown.
1
lib/ffmpeg.dyn.tar.xz.md5
Normal file
1
lib/ffmpeg.dyn.tar.xz.md5
Normal file
@ -0,0 +1 @@
|
||||
df99a0a9d2c13ff921032d6af62ff50d
|
68
lib/gbk.js
Normal file
68
lib/gbk.js
Normal file
File diff suppressed because one or more lines are too long
BIN
lib/geoip.dat.gz
Normal file
BIN
lib/geoip.dat.gz
Normal file
Binary file not shown.
118
lib/getsearchtxt.py
Normal file
118
lib/getsearchtxt.py
Normal file
@ -0,0 +1,118 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import sys
|
||||
import re
|
||||
import json
|
||||
import requests
|
||||
import time
|
||||
import traceback
|
||||
import gzip
|
||||
|
||||
p=re.compile(r'.*/s/(.*)')
|
||||
skipp = re.compile(r'.*(cover|screen|频道).*',re.IGNORECASE)
|
||||
reqcount=1
|
||||
sharedict=set()
|
||||
|
||||
def getlist(w,shareid, fileid,morepage):
|
||||
global p
|
||||
global skipp
|
||||
global reqcount
|
||||
global sharedict
|
||||
|
||||
reqcount += 1
|
||||
if reqcount % 5 == 0:
|
||||
print(f"reqcount:{reqcount} shareid:{shareid} fileid:{fileid}",file=sys.stderr)
|
||||
#time.sleep(1)
|
||||
url = f'http://192.168.101.188:9978/proxy?do=pikpak&type=list&share_id={shareid}&file_id={fileid}&pass_code=&morepage={morepage}'
|
||||
print(f"url: {url}",file=sys.stderr)
|
||||
resp = requests.get(url)
|
||||
content = resp.content.decode('utf-8')
|
||||
lines = content.split("\n")
|
||||
if "folder" not in content and len(lines)<=4:
|
||||
return
|
||||
isfirst=True
|
||||
for line in lines:
|
||||
if isfirst:
|
||||
isfirst=False
|
||||
print(f"first line:{line}",file=sys.stderr)
|
||||
if skipp.match(line):
|
||||
continue
|
||||
linearr = line.split('\t')
|
||||
if len(linearr)>2:
|
||||
m = p.match(linearr[0])
|
||||
if m:
|
||||
arr = m.group(1).split("/")
|
||||
else:
|
||||
arr = linearr[0].split("/")
|
||||
shareid=arr[0]
|
||||
fileid=arr[1] if len(arr)>1 else ""
|
||||
if shareid+"/"+fileid in sharedict:
|
||||
print(f"skip shareid{shareid} fileid:{fileid}", file=sys.stderr)
|
||||
continue
|
||||
w.write(line+"\n")
|
||||
w.flush()
|
||||
if linearr[2] == "folder":
|
||||
getlist(w,shareid,fileid,False)
|
||||
|
||||
if len(lines)>0:
|
||||
getlist(w,shareid,fileid,True)
|
||||
|
||||
def main():
|
||||
try:
|
||||
f = gzip.open(sys.argv[1]+".raw.gz",mode="rt",encoding="utf-8")
|
||||
if f is not None:
|
||||
print(f"found gz raw file:{sys.argv[1]}.raw.gz, extract it",file=sys.stderr)
|
||||
with(open(sys.argv[1]+".raw","w",encoding="utf-8")) as w:
|
||||
while(True):
|
||||
lines = f.readlines()
|
||||
if len(lines)<=0:
|
||||
break
|
||||
for line in lines:
|
||||
line=line.strip()
|
||||
w.write(line+"\n")
|
||||
f.seek(0)
|
||||
except:
|
||||
traceback.print_exc()
|
||||
try:
|
||||
f = open(sys.argv[1]+".raw","r",encoding="utf-8")
|
||||
except:
|
||||
f = None
|
||||
if f is not None:
|
||||
print("found old raw file")
|
||||
while True:
|
||||
lines = f.readlines()
|
||||
if len(lines)<=0:
|
||||
break
|
||||
for line in lines:
|
||||
linearr = line.split("\t")
|
||||
m = p.match(linearr[0])
|
||||
if m:
|
||||
arr = m.group(1).split("/")
|
||||
else:
|
||||
arr = linearr[0].split("/")
|
||||
if len(arr)>1:
|
||||
shareid = arr[0]
|
||||
fileid = arr[1]
|
||||
sharedict.add(shareid+"/"+fileid)
|
||||
f.close()
|
||||
print(f"old raw file record:{len(sharedict)}")
|
||||
else:
|
||||
print("no old raw file")
|
||||
with(open(sys.argv[1]+".raw","a+",encoding="utf-8")) as w:
|
||||
with(open(sys.argv[1],"r",encoding="utf-8")) as f:
|
||||
j = json.load(f)
|
||||
for c in j:
|
||||
shareid=c.get("type_id")
|
||||
fileid=""
|
||||
m = p.match(shareid)
|
||||
if m:
|
||||
arr = m.group(1).split("/")
|
||||
else:
|
||||
arr = shareid.split("/")
|
||||
shareid=arr[0]
|
||||
fileid=arr[1] if len(arr)>1 else ""
|
||||
if shareid+"/"+fileid in sharedict:
|
||||
continue
|
||||
getlist(w,shareid,fileid,False)
|
||||
|
||||
main()
|
1
lib/guanying.txt
Normal file
1
lib/guanying.txt
Normal file
@ -0,0 +1 @@
|
||||
PHPSESSID=ganhnal84m7p7ps88qre5pnb58; BT_auth=219cjj5VOpallepwQ6GQkCsa0V22xd44ZEBXjbaccRQTqYolLEQKCr79RhK6hi0ePXQWElcMT2z0XXcmCEDLCeAQRU_T8Mb59CrET8BkR4wWvfncJC7QIyTkXywXO7hHKMwp413wM5J5AosInqJ_KWMkqgEr4clvAmH6m1TXssP5kzbSaFSlv5g; BT_cookietime=fe0do1gxerV2GcsTIPsgTC2hRekxR8gGoh7OOotRT0TNVNRYTnjX
|
482
lib/jianpian.json
Normal file
482
lib/jianpian.json
Normal file
@ -0,0 +1,482 @@
|
||||
{
|
||||
"0": [
|
||||
{
|
||||
"key": "area",
|
||||
"name": "地區",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "0"
|
||||
},
|
||||
{
|
||||
"n": "国产",
|
||||
"v": "1"
|
||||
},
|
||||
{
|
||||
"n": "中国香港",
|
||||
"v": "3"
|
||||
},
|
||||
{
|
||||
"n": "中国台湾",
|
||||
"v": "6"
|
||||
},
|
||||
{
|
||||
"n": "美国",
|
||||
"v": "5"
|
||||
},
|
||||
{
|
||||
"n": "韩国",
|
||||
"v": "18"
|
||||
},
|
||||
{
|
||||
"n": "日本",
|
||||
"v": "2"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "0"
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "153"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "101"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "118"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "16"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "7"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "3"
|
||||
},
|
||||
{
|
||||
"n": "2016",
|
||||
"v": "22"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "热门",
|
||||
"v": "hot"
|
||||
},
|
||||
{
|
||||
"n": "更新",
|
||||
"v": "updata"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "rating"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"1": [
|
||||
{
|
||||
"key": "area",
|
||||
"name": "地區",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "0"
|
||||
},
|
||||
{
|
||||
"n": "国产",
|
||||
"v": "1"
|
||||
},
|
||||
{
|
||||
"n": "中国香港",
|
||||
"v": "3"
|
||||
},
|
||||
{
|
||||
"n": "中国台湾",
|
||||
"v": "6"
|
||||
},
|
||||
{
|
||||
"n": "美国",
|
||||
"v": "5"
|
||||
},
|
||||
{
|
||||
"n": "韩国",
|
||||
"v": "18"
|
||||
},
|
||||
{
|
||||
"n": "日本",
|
||||
"v": "2"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "0"
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "153"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "101"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "118"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "16"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "7"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "3"
|
||||
},
|
||||
{
|
||||
"n": "2016",
|
||||
"v": "22"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "热门",
|
||||
"v": "hot"
|
||||
},
|
||||
{
|
||||
"n": "更新",
|
||||
"v": "updata"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "rating"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"2": [
|
||||
{
|
||||
"key": "area",
|
||||
"name": "地區",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "0"
|
||||
},
|
||||
{
|
||||
"n": "国产",
|
||||
"v": "1"
|
||||
},
|
||||
{
|
||||
"n": "中国香港",
|
||||
"v": "3"
|
||||
},
|
||||
{
|
||||
"n": "中国台湾",
|
||||
"v": "6"
|
||||
},
|
||||
{
|
||||
"n": "美国",
|
||||
"v": "5"
|
||||
},
|
||||
{
|
||||
"n": "韩国",
|
||||
"v": "18"
|
||||
},
|
||||
{
|
||||
"n": "日本",
|
||||
"v": "2"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "0"
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "153"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "101"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "118"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "16"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "7"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "3"
|
||||
},
|
||||
{
|
||||
"n": "2016",
|
||||
"v": "22"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "热门",
|
||||
"v": "hot"
|
||||
},
|
||||
{
|
||||
"n": "更新",
|
||||
"v": "updata"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "rating"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"3": [
|
||||
{
|
||||
"key": "area",
|
||||
"name": "地區",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "0"
|
||||
},
|
||||
{
|
||||
"n": "国产",
|
||||
"v": "1"
|
||||
},
|
||||
{
|
||||
"n": "中国香港",
|
||||
"v": "3"
|
||||
},
|
||||
{
|
||||
"n": "中国台湾",
|
||||
"v": "6"
|
||||
},
|
||||
{
|
||||
"n": "美国",
|
||||
"v": "5"
|
||||
},
|
||||
{
|
||||
"n": "韩国",
|
||||
"v": "18"
|
||||
},
|
||||
{
|
||||
"n": "日本",
|
||||
"v": "2"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "0"
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "153"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "101"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "118"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "16"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "7"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "3"
|
||||
},
|
||||
{
|
||||
"n": "2016",
|
||||
"v": "22"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "热门",
|
||||
"v": "hot"
|
||||
},
|
||||
{
|
||||
"n": "更新",
|
||||
"v": "updata"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "rating"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"4": [
|
||||
{
|
||||
"key": "area",
|
||||
"name": "地區",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "0"
|
||||
},
|
||||
{
|
||||
"n": "国产",
|
||||
"v": "1"
|
||||
},
|
||||
{
|
||||
"n": "中国香港",
|
||||
"v": "3"
|
||||
},
|
||||
{
|
||||
"n": "中国台湾",
|
||||
"v": "6"
|
||||
},
|
||||
{
|
||||
"n": "美国",
|
||||
"v": "5"
|
||||
},
|
||||
{
|
||||
"n": "韩国",
|
||||
"v": "18"
|
||||
},
|
||||
{
|
||||
"n": "日本",
|
||||
"v": "2"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "year",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "0"
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "153"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "101"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "118"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "16"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "7"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "3"
|
||||
},
|
||||
{
|
||||
"n": "2016",
|
||||
"v": "22"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "by",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "热门",
|
||||
"v": "hot"
|
||||
},
|
||||
{
|
||||
"n": "更新",
|
||||
"v": "updata"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "rating"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
577
lib/jinja.js
Normal file
577
lib/jinja.js
Normal file
@ -0,0 +1,577 @@
|
||||
/*!
|
||||
* Jinja Templating for JavaScript v0.1.8
|
||||
* https://github.com/sstur/jinja-js
|
||||
*
|
||||
* This is a slimmed-down Jinja2 implementation [http://jinja.pocoo.org/]
|
||||
*
|
||||
* In the interest of simplicity, it deviates from Jinja2 as follows:
|
||||
* - Line statements, cycle, super, macro tags and block nesting are not implemented
|
||||
* - auto escapes html by default (the filter is "html" not "e")
|
||||
* - Only "html" and "safe" filters are built in
|
||||
* - Filters are not valid in expressions; `foo|length > 1` is not valid
|
||||
* - Expression Tests (`if num is odd`) not implemented (`is` translates to `==` and `isnot` to `!=`)
|
||||
*
|
||||
* Notes:
|
||||
* - if property is not found, but method '_get' exists, it will be called with the property name (and cached)
|
||||
* - `{% for n in obj %}` iterates the object's keys; get the value with `{% for n in obj %}{{ obj[n] }}{% endfor %}`
|
||||
* - subscript notation `a[0]` takes literals or simple variables but not `a[item.key]`
|
||||
* - `.2` is not a valid number literal; use `0.2`
|
||||
*
|
||||
*/
|
||||
/*global require, exports, module, define */
|
||||
|
||||
(function (global, factory) {
|
||||
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
|
||||
typeof define === 'function' && define.amd ? define(['exports'], factory) :
|
||||
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.jinja = {}));
|
||||
})(this, (function (jinja) {
|
||||
"use strict";
|
||||
var STRINGS = /'(\\.|[^'])*'|"(\\.|[^"'"])*"/g;
|
||||
var IDENTS_AND_NUMS = /([$_a-z][$\w]*)|([+-]?\d+(\.\d+)?)/g;
|
||||
var NUMBER = /^[+-]?\d+(\.\d+)?$/;
|
||||
//non-primitive literals (array and object literals)
|
||||
var NON_PRIMITIVES = /\[[@#~](,[@#~])*\]|\[\]|\{([@i]:[@#~])(,[@i]:[@#~])*\}|\{\}/g;
|
||||
//bare identifiers such as variables and in object literals: {foo: 'value'}
|
||||
var IDENTIFIERS = /[$_a-z][$\w]*/ig;
|
||||
var VARIABLES = /i(\.i|\[[@#i]\])*/g;
|
||||
var ACCESSOR = /(\.i|\[[@#i]\])/g;
|
||||
var OPERATORS = /(===?|!==?|>=?|<=?|&&|\|\||[+\-\*\/%])/g;
|
||||
//extended (english) operators
|
||||
var EOPS = /(^|[^$\w])(and|or|not|is|isnot)([^$\w]|$)/g;
|
||||
var LEADING_SPACE = /^\s+/;
|
||||
var TRAILING_SPACE = /\s+$/;
|
||||
|
||||
var START_TOKEN = /\{\{\{|\{\{|\{%|\{#/;
|
||||
var TAGS = {
|
||||
'{{{': /^('(\\.|[^'])*'|"(\\.|[^"'"])*"|.)+?\}\}\}/,
|
||||
'{{': /^('(\\.|[^'])*'|"(\\.|[^"'"])*"|.)+?\}\}/,
|
||||
'{%': /^('(\\.|[^'])*'|"(\\.|[^"'"])*"|.)+?%\}/,
|
||||
'{#': /^('(\\.|[^'])*'|"(\\.|[^"'"])*"|.)+?#\}/
|
||||
};
|
||||
|
||||
var delimeters = {
|
||||
'{%': 'directive',
|
||||
'{{': 'output',
|
||||
'{#': 'comment'
|
||||
};
|
||||
|
||||
var operators = {
|
||||
and: '&&',
|
||||
or: '||',
|
||||
not: '!',
|
||||
is: '==',
|
||||
isnot: '!='
|
||||
};
|
||||
|
||||
var constants = {
|
||||
'true': true,
|
||||
'false': false,
|
||||
'null': null
|
||||
};
|
||||
|
||||
function Parser() {
|
||||
this.nest = [];
|
||||
this.compiled = [];
|
||||
this.childBlocks = 0;
|
||||
this.parentBlocks = 0;
|
||||
this.isSilent = false;
|
||||
}
|
||||
|
||||
Parser.prototype.push = function (line) {
|
||||
if (!this.isSilent) {
|
||||
this.compiled.push(line);
|
||||
}
|
||||
};
|
||||
|
||||
Parser.prototype.parse = function (src) {
|
||||
this.tokenize(src);
|
||||
return this.compiled;
|
||||
};
|
||||
|
||||
Parser.prototype.tokenize = function (src) {
|
||||
var lastEnd = 0, parser = this, trimLeading = false;
|
||||
matchAll(src, START_TOKEN, function (open, index, src) {
|
||||
//here we match the rest of the src against a regex for this tag
|
||||
var match = src.slice(index + open.length).match(TAGS[open]);
|
||||
match = (match ? match[0] : '');
|
||||
//here we sub out strings so we don't get false matches
|
||||
var simplified = match.replace(STRINGS, '@');
|
||||
//if we don't have a close tag or there is a nested open tag
|
||||
if (!match || ~simplified.indexOf(open)) {
|
||||
return index + 1;
|
||||
}
|
||||
var inner = match.slice(0, 0 - open.length);
|
||||
//check for white-space collapse syntax
|
||||
if (inner.charAt(0) === '-') var wsCollapseLeft = true;
|
||||
if (inner.slice(-1) === '-') var wsCollapseRight = true;
|
||||
inner = inner.replace(/^-|-$/g, '').trim();
|
||||
//if we're in raw mode and we are not looking at an "endraw" tag, move along
|
||||
if (parser.rawMode && (open + inner) !== '{%endraw') {
|
||||
return index + 1;
|
||||
}
|
||||
var text = src.slice(lastEnd, index);
|
||||
lastEnd = index + open.length + match.length;
|
||||
if (trimLeading) text = trimLeft(text);
|
||||
if (wsCollapseLeft) text = trimRight(text);
|
||||
if (wsCollapseRight) trimLeading = true;
|
||||
if (open === '{{{') {
|
||||
//liquid-style: make {{{x}}} => {{x|safe}}
|
||||
open = '{{';
|
||||
inner += '|safe';
|
||||
}
|
||||
parser.textHandler(text);
|
||||
parser.tokenHandler(open, inner);
|
||||
});
|
||||
var text = src.slice(lastEnd);
|
||||
if (trimLeading) text = trimLeft(text);
|
||||
this.textHandler(text);
|
||||
};
|
||||
|
||||
Parser.prototype.textHandler = function (text) {
|
||||
this.push('write(' + JSON.stringify(text) + ');');
|
||||
};
|
||||
|
||||
Parser.prototype.tokenHandler = function (open, inner) {
|
||||
var type = delimeters[open];
|
||||
if (type === 'directive') {
|
||||
this.compileTag(inner);
|
||||
} else if (type === 'output') {
|
||||
var extracted = this.extractEnt(inner, STRINGS, '@');
|
||||
//replace || operators with ~
|
||||
extracted.src = extracted.src.replace(/\|\|/g, '~').split('|');
|
||||
//put back || operators
|
||||
extracted.src = extracted.src.map(function (part) {
|
||||
return part.split('~').join('||');
|
||||
});
|
||||
var parts = this.injectEnt(extracted, '@');
|
||||
if (parts.length > 1) {
|
||||
var filters = parts.slice(1).map(this.parseFilter.bind(this));
|
||||
this.push('filter(' + this.parseExpr(parts[0]) + ',' + filters.join(',') + ');');
|
||||
} else {
|
||||
this.push('filter(' + this.parseExpr(parts[0]) + ');');
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
Parser.prototype.compileTag = function (str) {
|
||||
var directive = str.split(' ')[0];
|
||||
var handler = tagHandlers[directive];
|
||||
if (!handler) {
|
||||
throw new Error('Invalid tag: ' + str);
|
||||
}
|
||||
handler.call(this, str.slice(directive.length).trim());
|
||||
};
|
||||
|
||||
Parser.prototype.parseFilter = function (src) {
|
||||
src = src.trim();
|
||||
var match = src.match(/[:(]/);
|
||||
var i = match ? match.index : -1;
|
||||
if (i < 0) return JSON.stringify([src]);
|
||||
var name = src.slice(0, i);
|
||||
var args = src.charAt(i) === ':' ? src.slice(i + 1) : src.slice(i + 1, -1);
|
||||
args = this.parseExpr(args, {terms: true});
|
||||
return '[' + JSON.stringify(name) + ',' + args + ']';
|
||||
};
|
||||
|
||||
Parser.prototype.extractEnt = function (src, regex, placeholder) {
|
||||
var subs = [], isFunc = typeof placeholder == 'function';
|
||||
src = src.replace(regex, function (str) {
|
||||
var replacement = isFunc ? placeholder(str) : placeholder;
|
||||
if (replacement) {
|
||||
subs.push(str);
|
||||
return replacement;
|
||||
}
|
||||
return str;
|
||||
});
|
||||
return {src: src, subs: subs};
|
||||
};
|
||||
|
||||
Parser.prototype.injectEnt = function (extracted, placeholder) {
|
||||
var src = extracted.src, subs = extracted.subs, isArr = Array.isArray(src);
|
||||
var arr = (isArr) ? src : [src];
|
||||
var re = new RegExp('[' + placeholder + ']', 'g'), i = 0;
|
||||
arr.forEach(function (src, index) {
|
||||
arr[index] = src.replace(re, function () {
|
||||
return subs[i++];
|
||||
});
|
||||
});
|
||||
return isArr ? arr : arr[0];
|
||||
};
|
||||
|
||||
//replace complex literals without mistaking subscript notation with array literals
|
||||
Parser.prototype.replaceComplex = function (s) {
|
||||
var parsed = this.extractEnt(s, /i(\.i|\[[@#i]\])+/g, 'v');
|
||||
parsed.src = parsed.src.replace(NON_PRIMITIVES, '~');
|
||||
return this.injectEnt(parsed, 'v');
|
||||
};
|
||||
|
||||
//parse expression containing literals (including objects/arrays) and variables (including dot and subscript notation)
|
||||
//valid expressions: `a + 1 > b.c or c == null`, `a and b[1] != c`, `(a < b) or (c < d and e)`, 'a || [1]`
|
||||
Parser.prototype.parseExpr = function (src, opts) {
|
||||
opts = opts || {};
|
||||
//extract string literals -> @
|
||||
var parsed1 = this.extractEnt(src, STRINGS, '@');
|
||||
//note: this will catch {not: 1} and a.is; could we replace temporarily and then check adjacent chars?
|
||||
parsed1.src = parsed1.src.replace(EOPS, function (s, before, op, after) {
|
||||
return (op in operators) ? before + operators[op] + after : s;
|
||||
});
|
||||
//sub out non-string literals (numbers/true/false/null) -> #
|
||||
// the distinction is necessary because @ can be object identifiers, # cannot
|
||||
var parsed2 = this.extractEnt(parsed1.src, IDENTS_AND_NUMS, function (s) {
|
||||
return (s in constants || NUMBER.test(s)) ? '#' : null;
|
||||
});
|
||||
//sub out object/variable identifiers -> i
|
||||
var parsed3 = this.extractEnt(parsed2.src, IDENTIFIERS, 'i');
|
||||
//remove white-space
|
||||
parsed3.src = parsed3.src.replace(/\s+/g, '');
|
||||
|
||||
//the rest of this is simply to boil the expression down and check validity
|
||||
var simplified = parsed3.src;
|
||||
//sub out complex literals (objects/arrays) -> ~
|
||||
// the distinction is necessary because @ and # can be subscripts but ~ cannot
|
||||
while (simplified !== (simplified = this.replaceComplex(simplified))) ;
|
||||
//now @ represents strings, # represents other primitives and ~ represents non-primitives
|
||||
//replace complex variables (those with dot/subscript accessors) -> v
|
||||
while (simplified !== (simplified = simplified.replace(/i(\.i|\[[@#i]\])+/, 'v'))) ;
|
||||
//empty subscript or complex variables in subscript, are not permitted
|
||||
simplified = simplified.replace(/[iv]\[v?\]/g, 'x');
|
||||
//sub in "i" for @ and # and ~ and v (now "i" represents all literals, variables and identifiers)
|
||||
simplified = simplified.replace(/[@#~v]/g, 'i');
|
||||
//sub out operators
|
||||
simplified = simplified.replace(OPERATORS, '%');
|
||||
//allow 'not' unary operator
|
||||
simplified = simplified.replace(/!+[i]/g, 'i');
|
||||
var terms = opts.terms ? simplified.split(',') : [simplified];
|
||||
terms.forEach(function (term) {
|
||||
//simplify logical grouping
|
||||
while (term !== (term = term.replace(/\(i(%i)*\)/g, 'i'))) ;
|
||||
if (!term.match(/^i(%i)*/)) {
|
||||
throw new Error('Invalid expression: ' + src + " " + term);
|
||||
}
|
||||
});
|
||||
parsed3.src = parsed3.src.replace(VARIABLES, this.parseVar.bind(this));
|
||||
parsed2.src = this.injectEnt(parsed3, 'i');
|
||||
parsed1.src = this.injectEnt(parsed2, '#');
|
||||
return this.injectEnt(parsed1, '@');
|
||||
};
|
||||
|
||||
Parser.prototype.parseVar = function (src) {
|
||||
var args = Array.prototype.slice.call(arguments);
|
||||
var str = args.pop(), index = args.pop();
|
||||
//quote bare object identifiers (might be a reserved word like {while: 1})
|
||||
if (src === 'i' && str.charAt(index + 1) === ':') {
|
||||
return '"i"';
|
||||
}
|
||||
var parts = ['"i"'];
|
||||
src.replace(ACCESSOR, function (part) {
|
||||
if (part === '.i') {
|
||||
parts.push('"i"');
|
||||
} else if (part === '[i]') {
|
||||
parts.push('get("i")');
|
||||
} else {
|
||||
parts.push(part.slice(1, -1));
|
||||
}
|
||||
});
|
||||
return 'get(' + parts.join(',') + ')';
|
||||
};
|
||||
|
||||
//escapes a name to be used as a javascript identifier
|
||||
Parser.prototype.escName = function (str) {
|
||||
return str.replace(/\W/g, function (s) {
|
||||
return '$' + s.charCodeAt(0).toString(16);
|
||||
});
|
||||
};
|
||||
|
||||
Parser.prototype.parseQuoted = function (str) {
|
||||
if (str.charAt(0) === "'") {
|
||||
str = str.slice(1, -1).replace(/\\.|"/, function (s) {
|
||||
if (s === "\\'") return "'";
|
||||
return s.charAt(0) === '\\' ? s : ('\\' + s);
|
||||
});
|
||||
str = '"' + str + '"';
|
||||
}
|
||||
//todo: try/catch or deal with invalid characters (linebreaks, control characters)
|
||||
return JSON.parse(str);
|
||||
};
|
||||
|
||||
|
||||
//the context 'this' inside tagHandlers is the parser instance
|
||||
var tagHandlers = {
|
||||
'if': function (expr) {
|
||||
this.push('if (' + this.parseExpr(expr) + ') {');
|
||||
this.nest.unshift('if');
|
||||
},
|
||||
'else': function () {
|
||||
if (this.nest[0] === 'for') {
|
||||
this.push('}, function() {');
|
||||
} else {
|
||||
this.push('} else {');
|
||||
}
|
||||
},
|
||||
'elseif': function (expr) {
|
||||
this.push('} else if (' + this.parseExpr(expr) + ') {');
|
||||
},
|
||||
'endif': function () {
|
||||
this.nest.shift();
|
||||
this.push('}');
|
||||
},
|
||||
'for': function (str) {
|
||||
var i = str.indexOf(' in ');
|
||||
var name = str.slice(0, i).trim();
|
||||
var expr = str.slice(i + 4).trim();
|
||||
this.push('each(' + this.parseExpr(expr) + ',' + JSON.stringify(name) + ',function() {');
|
||||
this.nest.unshift('for');
|
||||
},
|
||||
'endfor': function () {
|
||||
this.nest.shift();
|
||||
this.push('});');
|
||||
},
|
||||
'raw': function () {
|
||||
this.rawMode = true;
|
||||
},
|
||||
'endraw': function () {
|
||||
this.rawMode = false;
|
||||
},
|
||||
'set': function (stmt) {
|
||||
var i = stmt.indexOf('=');
|
||||
var name = stmt.slice(0, i).trim();
|
||||
var expr = stmt.slice(i + 1).trim();
|
||||
this.push('set(' + JSON.stringify(name) + ',' + this.parseExpr(expr) + ');');
|
||||
},
|
||||
'block': function (name) {
|
||||
if (this.isParent) {
|
||||
++this.parentBlocks;
|
||||
var blockName = 'block_' + (this.escName(name) || this.parentBlocks);
|
||||
this.push('block(typeof ' + blockName + ' == "function" ? ' + blockName + ' : function() {');
|
||||
} else if (this.hasParent) {
|
||||
this.isSilent = false;
|
||||
++this.childBlocks;
|
||||
blockName = 'block_' + (this.escName(name) || this.childBlocks);
|
||||
this.push('function ' + blockName + '() {');
|
||||
}
|
||||
this.nest.unshift('block');
|
||||
},
|
||||
'endblock': function () {
|
||||
this.nest.shift();
|
||||
if (this.isParent) {
|
||||
this.push('});');
|
||||
} else if (this.hasParent) {
|
||||
this.push('}');
|
||||
this.isSilent = true;
|
||||
}
|
||||
},
|
||||
'extends': function (name) {
|
||||
name = this.parseQuoted(name);
|
||||
var parentSrc = this.readTemplateFile(name);
|
||||
this.isParent = true;
|
||||
this.tokenize(parentSrc);
|
||||
this.isParent = false;
|
||||
this.hasParent = true;
|
||||
//silence output until we enter a child block
|
||||
this.isSilent = true;
|
||||
},
|
||||
'include': function (name) {
|
||||
name = this.parseQuoted(name);
|
||||
var incSrc = this.readTemplateFile(name);
|
||||
this.isInclude = true;
|
||||
this.tokenize(incSrc);
|
||||
this.isInclude = false;
|
||||
}
|
||||
};
|
||||
|
||||
//liquid style
|
||||
tagHandlers.assign = tagHandlers.set;
|
||||
//python/django style
|
||||
tagHandlers.elif = tagHandlers.elseif;
|
||||
|
||||
var getRuntime = function runtime(data, opts) {
|
||||
var defaults = {autoEscape: 'toJson'};
|
||||
var _toString = Object.prototype.toString;
|
||||
var _hasOwnProperty = Object.prototype.hasOwnProperty;
|
||||
var getKeys = Object.keys || function (obj) {
|
||||
var keys = [];
|
||||
for (var n in obj) if (_hasOwnProperty.call(obj, n)) keys.push(n);
|
||||
return keys;
|
||||
};
|
||||
var isArray = Array.isArray || function (obj) {
|
||||
return _toString.call(obj) === '[object Array]';
|
||||
};
|
||||
var create = Object.create || function (obj) {
|
||||
function F() {
|
||||
}
|
||||
|
||||
F.prototype = obj;
|
||||
return new F();
|
||||
};
|
||||
var toString = function (val) {
|
||||
if (val == null) return '';
|
||||
return (typeof val.toString == 'function') ? val.toString() : _toString.call(val);
|
||||
};
|
||||
var extend = function (dest, src) {
|
||||
var keys = getKeys(src);
|
||||
for (var i = 0, len = keys.length; i < len; i++) {
|
||||
var key = keys[i];
|
||||
dest[key] = src[key];
|
||||
}
|
||||
return dest;
|
||||
};
|
||||
//get a value, lexically, starting in current context; a.b -> get("a","b")
|
||||
var get = function () {
|
||||
var val, n = arguments[0], c = stack.length;
|
||||
while (c--) {
|
||||
val = stack[c][n];
|
||||
if (typeof val != 'undefined') break;
|
||||
}
|
||||
for (var i = 1, len = arguments.length; i < len; i++) {
|
||||
if (val == null) continue;
|
||||
n = arguments[i];
|
||||
val = (_hasOwnProperty.call(val, n)) ? val[n] : (typeof val._get == 'function' ? (val[n] = val._get(n)) : null);
|
||||
}
|
||||
return (val == null) ? '' : val;
|
||||
};
|
||||
var set = function (n, val) {
|
||||
stack[stack.length - 1][n] = val;
|
||||
};
|
||||
var push = function (ctx) {
|
||||
stack.push(ctx || {});
|
||||
};
|
||||
var pop = function () {
|
||||
stack.pop();
|
||||
};
|
||||
var write = function (str) {
|
||||
output.push(str);
|
||||
};
|
||||
var filter = function (val) {
|
||||
for (var i = 1, len = arguments.length; i < len; i++) {
|
||||
var arr = arguments[i], name = arr[0], filter = filters[name];
|
||||
if (filter) {
|
||||
arr[0] = val;
|
||||
//now arr looks like [val, arg1, arg2]
|
||||
val = filter.apply(data, arr);
|
||||
} else {
|
||||
throw new Error('Invalid filter: ' + name);
|
||||
}
|
||||
}
|
||||
if (opts.autoEscape && name !== opts.autoEscape && name !== 'safe') {
|
||||
//auto escape if not explicitly safe or already escaped
|
||||
val = filters[opts.autoEscape].call(data, val);
|
||||
}
|
||||
output.push(val);
|
||||
};
|
||||
var each = function (obj, loopvar, fn1, fn2) {
|
||||
if (obj == null) return;
|
||||
var arr = isArray(obj) ? obj : getKeys(obj), len = arr.length;
|
||||
var ctx = {loop: {length: len, first: arr[0], last: arr[len - 1]}};
|
||||
push(ctx);
|
||||
for (var i = 0; i < len; i++) {
|
||||
extend(ctx.loop, {index: i + 1, index0: i});
|
||||
fn1(ctx[loopvar] = arr[i]);
|
||||
}
|
||||
if (len === 0 && fn2) fn2();
|
||||
pop();
|
||||
};
|
||||
var block = function (fn) {
|
||||
push();
|
||||
fn();
|
||||
pop();
|
||||
};
|
||||
var render = function () {
|
||||
return output.join('');
|
||||
};
|
||||
data = data || {};
|
||||
opts = extend(defaults, opts || {});
|
||||
var filters = extend({
|
||||
html: function (val) {
|
||||
return toString(val)
|
||||
.split('&').join('&')
|
||||
.split('<').join('<')
|
||||
.split('>').join('>')
|
||||
.split('"').join('"');
|
||||
},
|
||||
safe: function (val) {
|
||||
return val;
|
||||
},
|
||||
toJson: function (val) {
|
||||
if (typeof val === 'object') {
|
||||
return JSON.stringify(val);
|
||||
}
|
||||
return toString(val);
|
||||
}
|
||||
}, opts.filters || {});
|
||||
var stack = [create(data || {})], output = [];
|
||||
return {
|
||||
get: get,
|
||||
set: set,
|
||||
push: push,
|
||||
pop: pop,
|
||||
write: write,
|
||||
filter: filter,
|
||||
each: each,
|
||||
block: block,
|
||||
render: render
|
||||
};
|
||||
};
|
||||
|
||||
var runtime;
|
||||
|
||||
jinja.compile = function (markup, opts) {
|
||||
opts = opts || {};
|
||||
var parser = new Parser();
|
||||
parser.readTemplateFile = this.readTemplateFile;
|
||||
var code = [];
|
||||
code.push('function render($) {');
|
||||
code.push('var get = $.get, set = $.set, push = $.push, pop = $.pop, write = $.write, filter = $.filter, each = $.each, block = $.block;');
|
||||
code.push.apply(code, parser.parse(markup));
|
||||
code.push('return $.render();');
|
||||
code.push('}');
|
||||
code = code.join('\n');
|
||||
if (opts.runtime === false) {
|
||||
var fn = new Function('data', 'options', 'return (' + code + ')(runtime(data, options))');
|
||||
} else {
|
||||
runtime = runtime || (runtime = getRuntime.toString());
|
||||
fn = new Function('data', 'options', 'return (' + code + ')((' + runtime + ')(data, options))');
|
||||
}
|
||||
return {render: fn};
|
||||
};
|
||||
|
||||
jinja.render = function (markup, data, opts) {
|
||||
var tmpl = jinja.compile(markup);
|
||||
return tmpl.render(data, opts);
|
||||
};
|
||||
|
||||
jinja.templateFiles = [];
|
||||
|
||||
jinja.readTemplateFile = function (name) {
|
||||
var templateFiles = this.templateFiles || [];
|
||||
var templateFile = templateFiles[name];
|
||||
if (templateFile == null) {
|
||||
throw new Error('Template file not found: ' + name);
|
||||
}
|
||||
return templateFile;
|
||||
};
|
||||
|
||||
|
||||
/*!
|
||||
* Helpers
|
||||
*/
|
||||
|
||||
function trimLeft(str) {
|
||||
return str.replace(LEADING_SPACE, '');
|
||||
}
|
||||
|
||||
function trimRight(str) {
|
||||
return str.replace(TRAILING_SPACE, '');
|
||||
}
|
||||
|
||||
function matchAll(str, reg, fn) {
|
||||
//copy as global
|
||||
reg = new RegExp(reg.source, 'g' + (reg.ignoreCase ? 'i' : '') + (reg.multiline ? 'm' : ''));
|
||||
var match;
|
||||
while ((match = reg.exec(str))) {
|
||||
var result = fn(match[0], match.index, str);
|
||||
if (typeof result == 'number') {
|
||||
reg.lastIndex = result;
|
||||
}
|
||||
}
|
||||
}
|
||||
}));
|
1737
lib/json5.js
Normal file
1737
lib/json5.js
Normal file
File diff suppressed because one or more lines are too long
BIN
lib/libxlsdk.tar.xz
Normal file
BIN
lib/libxlsdk.tar.xz
Normal file
Binary file not shown.
1
lib/libxlsdk.tar.xz.md5
Normal file
1
lib/libxlsdk.tar.xz.md5
Normal file
@ -0,0 +1 @@
|
||||
bda1cf31fbe74ccaf16e3b5544eb9f9b
|
1
lib/live2vod.js
Normal file
1
lib/live2vod.js
Normal file
File diff suppressed because one or more lines are too long
138
lib/mod.js
Normal file
138
lib/mod.js
Normal file
@ -0,0 +1,138 @@
|
||||
const peq = new Uint32Array(0x10000);
|
||||
const myers_32 = (a, b) => {
|
||||
const n = a.length;
|
||||
const m = b.length;
|
||||
const lst = 1 << (n - 1);
|
||||
let pv = -1;
|
||||
let mv = 0;
|
||||
let sc = n;
|
||||
let i = n;
|
||||
while (i--) {
|
||||
peq[a.charCodeAt(i)] |= 1 << i;
|
||||
}
|
||||
for (i = 0; i < m; i++) {
|
||||
let eq = peq[b.charCodeAt(i)];
|
||||
const xv = eq | mv;
|
||||
eq |= ((eq & pv) + pv) ^ pv;
|
||||
mv |= ~(eq | pv);
|
||||
pv &= eq;
|
||||
if (mv & lst) {
|
||||
sc++;
|
||||
}
|
||||
if (pv & lst) {
|
||||
sc--;
|
||||
}
|
||||
mv = (mv << 1) | 1;
|
||||
pv = (pv << 1) | ~(xv | mv);
|
||||
mv &= xv;
|
||||
}
|
||||
i = n;
|
||||
while (i--) {
|
||||
peq[a.charCodeAt(i)] = 0;
|
||||
}
|
||||
return sc;
|
||||
};
|
||||
const myers_x = (b, a) => {
|
||||
const n = a.length;
|
||||
const m = b.length;
|
||||
const mhc = [];
|
||||
const phc = [];
|
||||
const hsize = Math.ceil(n / 32);
|
||||
const vsize = Math.ceil(m / 32);
|
||||
for (let i = 0; i < hsize; i++) {
|
||||
phc[i] = -1;
|
||||
mhc[i] = 0;
|
||||
}
|
||||
let j = 0;
|
||||
for (; j < vsize - 1; j++) {
|
||||
let mv = 0;
|
||||
let pv = -1;
|
||||
const start = j * 32;
|
||||
const vlen = Math.min(32, m) + start;
|
||||
for (let k = start; k < vlen; k++) {
|
||||
peq[b.charCodeAt(k)] |= 1 << k;
|
||||
}
|
||||
for (let i = 0; i < n; i++) {
|
||||
const eq = peq[a.charCodeAt(i)];
|
||||
const pb = (phc[(i / 32) | 0] >>> i) & 1;
|
||||
const mb = (mhc[(i / 32) | 0] >>> i) & 1;
|
||||
const xv = eq | mv;
|
||||
const xh = ((((eq | mb) & pv) + pv) ^ pv) | eq | mb;
|
||||
let ph = mv | ~(xh | pv);
|
||||
let mh = pv & xh;
|
||||
if ((ph >>> 31) ^ pb) {
|
||||
phc[(i / 32) | 0] ^= 1 << i;
|
||||
}
|
||||
if ((mh >>> 31) ^ mb) {
|
||||
mhc[(i / 32) | 0] ^= 1 << i;
|
||||
}
|
||||
ph = (ph << 1) | pb;
|
||||
mh = (mh << 1) | mb;
|
||||
pv = mh | ~(xv | ph);
|
||||
mv = ph & xv;
|
||||
}
|
||||
for (let k = start; k < vlen; k++) {
|
||||
peq[b.charCodeAt(k)] = 0;
|
||||
}
|
||||
}
|
||||
let mv = 0;
|
||||
let pv = -1;
|
||||
const start = j * 32;
|
||||
const vlen = Math.min(32, m - start) + start;
|
||||
for (let k = start; k < vlen; k++) {
|
||||
peq[b.charCodeAt(k)] |= 1 << k;
|
||||
}
|
||||
let score = m;
|
||||
for (let i = 0; i < n; i++) {
|
||||
const eq = peq[a.charCodeAt(i)];
|
||||
const pb = (phc[(i / 32) | 0] >>> i) & 1;
|
||||
const mb = (mhc[(i / 32) | 0] >>> i) & 1;
|
||||
const xv = eq | mv;
|
||||
const xh = ((((eq | mb) & pv) + pv) ^ pv) | eq | mb;
|
||||
let ph = mv | ~(xh | pv);
|
||||
let mh = pv & xh;
|
||||
score += (ph >>> (m - 1)) & 1;
|
||||
score -= (mh >>> (m - 1)) & 1;
|
||||
if ((ph >>> 31) ^ pb) {
|
||||
phc[(i / 32) | 0] ^= 1 << i;
|
||||
}
|
||||
if ((mh >>> 31) ^ mb) {
|
||||
mhc[(i / 32) | 0] ^= 1 << i;
|
||||
}
|
||||
ph = (ph << 1) | pb;
|
||||
mh = (mh << 1) | mb;
|
||||
pv = mh | ~(xv | ph);
|
||||
mv = ph & xv;
|
||||
}
|
||||
for (let k = start; k < vlen; k++) {
|
||||
peq[b.charCodeAt(k)] = 0;
|
||||
}
|
||||
return score;
|
||||
};
|
||||
const distance = (a, b) => {
|
||||
if (a.length < b.length) {
|
||||
const tmp = b;
|
||||
b = a;
|
||||
a = tmp;
|
||||
}
|
||||
if (b.length === 0) {
|
||||
return a.length;
|
||||
}
|
||||
if (a.length <= 32) {
|
||||
return myers_32(a, b);
|
||||
}
|
||||
return myers_x(a, b);
|
||||
};
|
||||
const closest = (str, arr) => {
|
||||
let min_distance = Infinity;
|
||||
let min_index = 0;
|
||||
for (let i = 0; i < arr.length; i++) {
|
||||
const dist = distance(str, arr[i]);
|
||||
if (dist < min_distance) {
|
||||
min_distance = dist;
|
||||
min_index = i;
|
||||
}
|
||||
}
|
||||
return arr[min_index];
|
||||
};
|
||||
export { closest, distance };
|
764
lib/moli.json
Normal file
764
lib/moli.json
Normal file
@ -0,0 +1,764 @@
|
||||
{
|
||||
"1": [
|
||||
{
|
||||
"key": "0",
|
||||
"name": "类型",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "1"
|
||||
},
|
||||
{
|
||||
"n": "动作",
|
||||
"v": "5"
|
||||
},
|
||||
{
|
||||
"n": "爱情",
|
||||
"v": "6"
|
||||
},
|
||||
{
|
||||
"n": "科幻",
|
||||
"v": "7"
|
||||
},
|
||||
{
|
||||
"n": "恐怖",
|
||||
"v": "8"
|
||||
},
|
||||
{
|
||||
"n": "战争",
|
||||
"v": "9"
|
||||
},
|
||||
{
|
||||
"n": "喜剧",
|
||||
"v": "10"
|
||||
},
|
||||
{
|
||||
"n": "纪录片",
|
||||
"v": "11"
|
||||
},
|
||||
{
|
||||
"n": "剧情",
|
||||
"v": "12"
|
||||
},
|
||||
{
|
||||
"n": "犯罪",
|
||||
"v": "30"
|
||||
},
|
||||
{
|
||||
"n": "动画",
|
||||
"v": "32"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "1",
|
||||
"name": "剧情",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "战争",
|
||||
"v": "战争"
|
||||
},
|
||||
{
|
||||
"n": "恐怖",
|
||||
"v": "恐怖"
|
||||
},
|
||||
{
|
||||
"n": "剧情",
|
||||
"v": "剧情"
|
||||
},
|
||||
{
|
||||
"n": "爱情",
|
||||
"v": "爱情"
|
||||
},
|
||||
{
|
||||
"n": "家庭",
|
||||
"v": "家庭"
|
||||
},
|
||||
{
|
||||
"n": "励志",
|
||||
"v": "励志"
|
||||
},
|
||||
{
|
||||
"n": "悬疑",
|
||||
"v": "悬疑"
|
||||
},
|
||||
{
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
},
|
||||
{
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
},
|
||||
{
|
||||
"n": "冒险",
|
||||
"v": "冒险"
|
||||
},
|
||||
{
|
||||
"n": "历史",
|
||||
"v": "历史"
|
||||
},
|
||||
{
|
||||
"n": "惊悚",
|
||||
"v": "惊悚"
|
||||
},
|
||||
{
|
||||
"n": "音乐",
|
||||
"v": "音乐"
|
||||
},
|
||||
{
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
},
|
||||
{
|
||||
"n": "犯罪",
|
||||
"v": "犯罪"
|
||||
},
|
||||
{
|
||||
"n": "运动",
|
||||
"v": "运动"
|
||||
},
|
||||
{
|
||||
"n": "喜剧",
|
||||
"v": "喜剧"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "2",
|
||||
"name": "地区",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "美国",
|
||||
"v": "美国"
|
||||
},
|
||||
{
|
||||
"n": "韩国",
|
||||
"v": "韩国"
|
||||
},
|
||||
{
|
||||
"n": "英国",
|
||||
"v": "英国"
|
||||
},
|
||||
{
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
},
|
||||
{
|
||||
"n": "泰国",
|
||||
"v": "泰国"
|
||||
},
|
||||
{
|
||||
"n": "中国",
|
||||
"v": "中国"
|
||||
},
|
||||
{
|
||||
"n": "其他",
|
||||
"v": "其他"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "3",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
},
|
||||
{
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
},
|
||||
{
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
},
|
||||
{
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
},
|
||||
{
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
},
|
||||
{
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
},
|
||||
{
|
||||
"n": "2011",
|
||||
"v": "2011"
|
||||
},
|
||||
{
|
||||
"n": "2010",
|
||||
"v": "2010"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "4",
|
||||
"name": "状态",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "完结",
|
||||
"v": "w"
|
||||
},
|
||||
{
|
||||
"n": "连载中",
|
||||
"v": "l"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "5",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "douban"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"2": [
|
||||
{
|
||||
"key": "0",
|
||||
"name": "类型",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "2"
|
||||
},
|
||||
{
|
||||
"n": "美剧",
|
||||
"v": "15"
|
||||
},
|
||||
{
|
||||
"n": "韩剧",
|
||||
"v": "16"
|
||||
},
|
||||
{
|
||||
"n": "日剧",
|
||||
"v": "13"
|
||||
},
|
||||
{
|
||||
"n": "英剧",
|
||||
"v": "34"
|
||||
},
|
||||
{
|
||||
"n": "中国",
|
||||
"v": "14"
|
||||
},
|
||||
{
|
||||
"n": "泰剧",
|
||||
"v": "29"
|
||||
},
|
||||
{
|
||||
"n": "综艺",
|
||||
"v": "39"
|
||||
},
|
||||
{
|
||||
"n": "其他",
|
||||
"v": "38"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "1",
|
||||
"name": "剧情",
|
||||
"value": [
|
||||
{
|
||||
"n": "战争",
|
||||
"v": "战争"
|
||||
},
|
||||
{
|
||||
"n": "恐怖",
|
||||
"v": "恐怖"
|
||||
},
|
||||
{
|
||||
"n": "剧情",
|
||||
"v": "剧情"
|
||||
},
|
||||
{
|
||||
"n": "爱情",
|
||||
"v": "爱情"
|
||||
},
|
||||
{
|
||||
"n": "家庭",
|
||||
"v": "家庭"
|
||||
},
|
||||
{
|
||||
"n": "励志",
|
||||
"v": "励志"
|
||||
},
|
||||
{
|
||||
"n": "悬疑",
|
||||
"v": "悬疑"
|
||||
},
|
||||
{
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
},
|
||||
{
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
},
|
||||
{
|
||||
"n": "冒险",
|
||||
"v": "冒险"
|
||||
},
|
||||
{
|
||||
"n": "历史",
|
||||
"v": "历史"
|
||||
},
|
||||
{
|
||||
"n": "惊悚",
|
||||
"v": "惊悚"
|
||||
},
|
||||
{
|
||||
"n": "音乐",
|
||||
"v": "音乐"
|
||||
},
|
||||
{
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
},
|
||||
{
|
||||
"n": "犯罪",
|
||||
"v": "犯罪"
|
||||
},
|
||||
{
|
||||
"n": "运动",
|
||||
"v": "运动"
|
||||
},
|
||||
{
|
||||
"n": "喜剧",
|
||||
"v": "喜剧"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "2",
|
||||
"name": "地区",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "美国",
|
||||
"v": "美国"
|
||||
},
|
||||
{
|
||||
"n": "韩国",
|
||||
"v": "韩国"
|
||||
},
|
||||
{
|
||||
"n": "英国",
|
||||
"v": "英国"
|
||||
},
|
||||
{
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
},
|
||||
{
|
||||
"n": "泰国",
|
||||
"v": "泰国"
|
||||
},
|
||||
{
|
||||
"n": "中国",
|
||||
"v": "中国"
|
||||
},
|
||||
{
|
||||
"n": "其他",
|
||||
"v": "其他"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "3",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
},
|
||||
{
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
},
|
||||
{
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
},
|
||||
{
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
},
|
||||
{
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
},
|
||||
{
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
},
|
||||
{
|
||||
"n": "2011",
|
||||
"v": "2011"
|
||||
},
|
||||
{
|
||||
"n": "2010",
|
||||
"v": "2010"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "4",
|
||||
"name": "状态",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "完结",
|
||||
"v": "w"
|
||||
},
|
||||
{
|
||||
"n": "连载中",
|
||||
"v": "l"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "5",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "douban"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"41": [
|
||||
{
|
||||
"key": "0",
|
||||
"name": "类型",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": "41"
|
||||
},
|
||||
{
|
||||
"n": "日本",
|
||||
"v": "42"
|
||||
},
|
||||
{
|
||||
"n": "其他",
|
||||
"v": "43"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "1",
|
||||
"name": "剧情",
|
||||
"value": [
|
||||
{
|
||||
"n": "战争",
|
||||
"v": "战争"
|
||||
},
|
||||
{
|
||||
"n": "恐怖",
|
||||
"v": "恐怖"
|
||||
},
|
||||
{
|
||||
"n": "剧情",
|
||||
"v": "剧情"
|
||||
},
|
||||
{
|
||||
"n": "爱情",
|
||||
"v": "爱情"
|
||||
},
|
||||
{
|
||||
"n": "家庭",
|
||||
"v": "家庭"
|
||||
},
|
||||
{
|
||||
"n": "励志",
|
||||
"v": "励志"
|
||||
},
|
||||
{
|
||||
"n": "悬疑",
|
||||
"v": "悬疑"
|
||||
},
|
||||
{
|
||||
"n": "动作",
|
||||
"v": "动作"
|
||||
},
|
||||
{
|
||||
"n": "奇幻",
|
||||
"v": "奇幻"
|
||||
},
|
||||
{
|
||||
"n": "冒险",
|
||||
"v": "冒险"
|
||||
},
|
||||
{
|
||||
"n": "历史",
|
||||
"v": "历史"
|
||||
},
|
||||
{
|
||||
"n": "惊悚",
|
||||
"v": "惊悚"
|
||||
},
|
||||
{
|
||||
"n": "音乐",
|
||||
"v": "音乐"
|
||||
},
|
||||
{
|
||||
"n": "科幻",
|
||||
"v": "科幻"
|
||||
},
|
||||
{
|
||||
"n": "犯罪",
|
||||
"v": "犯罪"
|
||||
},
|
||||
{
|
||||
"n": "运动",
|
||||
"v": "运动"
|
||||
},
|
||||
{
|
||||
"n": "喜剧",
|
||||
"v": "喜剧"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "2",
|
||||
"name": "地区",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "美国",
|
||||
"v": "美国"
|
||||
},
|
||||
{
|
||||
"n": "韩国",
|
||||
"v": "韩国"
|
||||
},
|
||||
{
|
||||
"n": "英国",
|
||||
"v": "英国"
|
||||
},
|
||||
{
|
||||
"n": "日本",
|
||||
"v": "日本"
|
||||
},
|
||||
{
|
||||
"n": "泰国",
|
||||
"v": "泰国"
|
||||
},
|
||||
{
|
||||
"n": "中国",
|
||||
"v": "中国"
|
||||
},
|
||||
{
|
||||
"n": "其他",
|
||||
"v": "其他"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "3",
|
||||
"name": "年份",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "2024",
|
||||
"v": "2024"
|
||||
},
|
||||
{
|
||||
"n": "2023",
|
||||
"v": "2023"
|
||||
},
|
||||
{
|
||||
"n": "2022",
|
||||
"v": "2022"
|
||||
},
|
||||
{
|
||||
"n": "2021",
|
||||
"v": "2021"
|
||||
},
|
||||
{
|
||||
"n": "2020",
|
||||
"v": "2020"
|
||||
},
|
||||
{
|
||||
"n": "2019",
|
||||
"v": "2019"
|
||||
},
|
||||
{
|
||||
"n": "2018",
|
||||
"v": "2018"
|
||||
},
|
||||
{
|
||||
"n": "2017",
|
||||
"v": "2017"
|
||||
},
|
||||
{
|
||||
"n": "2016",
|
||||
"v": "2016"
|
||||
},
|
||||
{
|
||||
"n": "2015",
|
||||
"v": "2015"
|
||||
},
|
||||
{
|
||||
"n": "2014",
|
||||
"v": "2014"
|
||||
},
|
||||
{
|
||||
"n": "2013",
|
||||
"v": "2013"
|
||||
},
|
||||
{
|
||||
"n": "2012",
|
||||
"v": "2012"
|
||||
},
|
||||
{
|
||||
"n": "2011",
|
||||
"v": "2011"
|
||||
},
|
||||
{
|
||||
"n": "2010",
|
||||
"v": "2010"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "4",
|
||||
"name": "状态",
|
||||
"value": [
|
||||
{
|
||||
"n": "全部",
|
||||
"v": ""
|
||||
},
|
||||
{
|
||||
"n": "完结",
|
||||
"v": "w"
|
||||
},
|
||||
{
|
||||
"n": "连载中",
|
||||
"v": "l"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "5",
|
||||
"name": "排序",
|
||||
"value": [
|
||||
{
|
||||
"n": "时间",
|
||||
"v": "time"
|
||||
},
|
||||
{
|
||||
"n": "评分",
|
||||
"v": "douban"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
2
lib/node-rsa.js
Normal file
2
lib/node-rsa.js
Normal file
File diff suppressed because one or more lines are too long
2
lib/pako.min.js
vendored
Normal file
2
lib/pako.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
80
lib/pikpakclass.json
Normal file
80
lib/pikpakclass.json
Normal file
@ -0,0 +1,80 @@
|
||||
[
|
||||
{"type_id":"https://mypikpak.com/s/self", "type_name":"我的PikPak網盤", "version":"20240301"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRT8Wr8BGyw1kt1HkijKR4Qo1","type_name":"高清劇集合集一二"},
|
||||
{"type_id":"https://mypikpak.com/s/VNThL9vJ7kj57e2Kr_dlOzc0o1","type_name":"每日更新" },
|
||||
{"type_id":"https://mypikpak.com/s/VNBG3CPruacfHy3KVrVR1Qbko1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧1"},
|
||||
{"type_id":"https://mypikpak.com/s/VNBXQHEBywwEP48SYNoLGhg-o1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧10"},
|
||||
{"type_id":"https://mypikpak.com/s/VNCKGMKeL4KQWxNSeNl-aNK8o1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧11"},
|
||||
{"type_id":"https://mypikpak.com/s/VNCKIgIdXbeMUnS27Hc7ifoho1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧12"},
|
||||
{"type_id":"https://mypikpak.com/s/VNCKK_lIL4KQWxNSeNl-b-Avo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧13"},
|
||||
{"type_id":"https://mypikpak.com/s/VNCPyF1ibAmUFsTwcgPpV2RPo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧14"},
|
||||
{"type_id":"https://mypikpak.com/s/VNCPyIV4bsikE1REQUzU3HAKo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧15"},
|
||||
{"type_id":"https://mypikpak.com/s/VNCPyLg-XbeMUnS27Hc8e-evo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧16"},
|
||||
{"type_id":"https://mypikpak.com/s/VNCPyOHZfY9FgjheL_s6tE0Eo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧17"},
|
||||
{"type_id":"https://mypikpak.com/s/VNCdGBWsTsU_1xrcd7arNGkyo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧18"},
|
||||
{"type_id":"https://mypikpak.com/s/VNCdGaN8bsik85HcYchTzGwpo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧19"},
|
||||
{"type_id":"https://mypikpak.com/s/VNCdGlQdbAmU3kIGsTh-INYQo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧20"},
|
||||
{"type_id":"https://mypikpak.com/s/VNCdGvg1QqH-jGYGfgcDoqWho1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧21"},
|
||||
{"type_id":"https://mypikpak.com/s/VNCdHOhJTsU_1xrcd7arNWAuo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧22"},
|
||||
{"type_id":"https://mypikpak.com/s/VNCdHU8Xbsik85HcYchTzRlwo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧23"},
|
||||
{"type_id":"https://mypikpak.com/s/VNDJ--9QP3sxqczyGV8n35pUo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧24"},
|
||||
{"type_id":"https://mypikpak.com/s/VNDJ-2f3xeTB-N74vaHopsB8o1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧25"},
|
||||
{"type_id":"https://mypikpak.com/s/VNDJ-6m_P3sxqczyGV8n37Lso1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧26"},
|
||||
{"type_id":"https://mypikpak.com/s/VNDJ-AxdxeTB-N74vaHoptVeo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧27"},
|
||||
{"type_id":"https://mypikpak.com/s/VNDJ-F3_OLXqy_gd7t0qYPsTo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧28"},
|
||||
{"type_id":"https://mypikpak.com/s/VNJ-KE7EDnDGgthutL8stFDco1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧29"},
|
||||
{"type_id":"https://mypikpak.com/s/VNBGhK25s795X1GmZKtAzarxo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧3"},
|
||||
{"type_id":"https://mypikpak.com/s/VNJ-KU-PpnUdNyThzczFHNY0o1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧30"},
|
||||
{"type_id":"https://mypikpak.com/s/VNKX8Tmvg-_M2ALfxiCXcfbOo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧31"},
|
||||
{"type_id":"https://mypikpak.com/s/VNKX8k1cDAay6DoGUEtaSmGjo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧32"},
|
||||
{"type_id":"https://mypikpak.com/s/VNLt5PTTTImas0d3tF0BaJ7Zo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧33"},
|
||||
{"type_id":"https://mypikpak.com/s/VNLt5dq-vYqkqbIuRJRjLoiso1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧34"},
|
||||
{"type_id":"https://mypikpak.com/s/VNLuwIBrvYqkY2pqZt625qhyo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧35"},
|
||||
{"type_id":"https://mypikpak.com/s/VNLuwKtrvYqkY2pqZt625r-eo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧36"},
|
||||
{"type_id":"https://mypikpak.com/s/VNLyAGr0Qwh14Yz40bSwR67do1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧37"},
|
||||
{"type_id":"https://mypikpak.com/s/VNLyAJDMZAcORH2HWUMhsvGWo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧38"},
|
||||
{"type_id":"https://mypikpak.com/s/VNLySlyJpr1J-y7W15G4N6xXo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧39"},
|
||||
{"type_id":"https://mypikpak.com/s/VNBGjxzm-8JG74imIZI6qg8Do1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧4"},
|
||||
{"type_id":"https://mypikpak.com/s/VNLySocLsRCm72XnqKv7pueto1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧40"},
|
||||
{"type_id":"https://mypikpak.com/s/VNLyXhUKwRiUO2berP7_qFoao1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧41"},
|
||||
{"type_id":"https://mypikpak.com/s/VNBH3M6lJXuc4t0v-pqB0dFQo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧5"},
|
||||
{"type_id":"https://mypikpak.com/s/VNBHRToB_DHT_nmBnwoud8QJo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧6"},
|
||||
{"type_id":"https://mypikpak.com/s/VNBHSrWiCjrm4NxyIs_56cHpo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧7"},
|
||||
{"type_id":"https://mypikpak.com/s/VNBXPhSLJktjoBJJe8ptXNbco1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧8"},
|
||||
{"type_id":"https://mypikpak.com/s/VNBXPwl3bA6kG0eqiyJI3ulOo1","type_name":"/🕸️我的PikPak分享/电视剧140T/电视剧9"},
|
||||
{"type_id":"https://mypikpak.com/s/VNDb64cFhcn-yqNU5EWDgRZno1","type_name":"/🕸️我的PikPak分享/电影75T/电影1"},
|
||||
{"type_id":"https://mypikpak.com/s/VNM8-8Xlpr1JhKCjzr3hvs2Vo1","type_name":"/🕸️我的PikPak分享/电影75T/电影10"},
|
||||
{"type_id":"https://mypikpak.com/s/VNDb67b3hcn-yqNU5EWDgUDWo1","type_name":"/🕸️我的PikPak分享/电影75T/电影2"},
|
||||
{"type_id":"https://mypikpak.com/s/VNDca2W6hcn-yqNU5EWE-PLOo1","type_name":"/🕸️我的PikPak分享/电影75T/电影3"},
|
||||
{"type_id":"https://mypikpak.com/s/VNE5x-MGTKDwgZ2rSxM1xhrNo1","type_name":"/🕸️我的PikPak分享/电影75T/电影4"},
|
||||
{"type_id":"https://mypikpak.com/s/VNEdL2CecnVliWDE0AMdROMzo1","type_name":"/🕸️我的PikPak分享/电影75T/电影5"},
|
||||
{"type_id":"https://mypikpak.com/s/VNF8bBfoU5Warn8hY_LZYs3Xo1","type_name":"/🕸️我的PikPak分享/电影75T/电影6"},
|
||||
{"type_id":"https://mypikpak.com/s/VNGGxkU4AYqxeOi-Ts-R_4koo1","type_name":"/🕸️我的PikPak分享/电影75T/电影7"},
|
||||
{"type_id":"https://mypikpak.com/s/VNGHC0J31cRSfFQDubOJoLCAo1","type_name":"/🕸️我的PikPak分享/电影75T/电影8"},
|
||||
{"type_id":"https://mypikpak.com/s/VNM7V9gdpr1JgySnCF-P07aJo1","type_name":"/🕸️我的PikPak分享/电影75T/电影9"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRnagBUCfOipBFoWCX8EGSdo1","type_name":"/🕸️我的PikPak分享/高清电影/合集10"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRR1cc0LmyyGDe21AoK6Ulho1","type_name":"/🕸️我的PikPak分享/高清电影/合集11"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRlVwQYQgqv395kxGBhPmDoo1","type_name":"/🕸️我的PikPak分享/高清电影/合集2"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRm3yZtBGywKa118vzvgAg6o1","type_name":"/🕸️我的PikPak分享/高清电影/合集3"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRmWOmQBGywKa118vzvlRiZo1","type_name":"/🕸️我的PikPak分享/高清电影/合集4"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRmoFmoroRROhEkho_8kY_1o1","type_name":"/🕸️我的PikPak分享/高清电影/合集5"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRn6HqiBGywKa118vzvuqFqo1","type_name":"/🕸️我的PikPak分享/高清电影/合集6"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRnJASUroRROhEkho_8tpGfo1","type_name":"/🕸️我的PikPak分享/高清电影/合集7"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRlg0pS7aWN3HWJGVGp2pZTo1","type_name":"/🕸️我的PikPak分享/高清电影/合集8"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRnQbMN7aWN3HWJGVGpSkxFo1","type_name":"/🕸️我的PikPak分享/高清电影/合集9"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRTAMNvBGyw1kt1HkijL-n0o1","type_name":"/🕸️我的PikPak分享/高清剧集A/合集11"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRTAhOZLmyyX7yiCb6t1jTuo1","type_name":"/🕸️我的PikPak分享/高清剧集A/合集14"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRTBCKPLmyyX7yiCb6t1qEKo1","type_name":"/🕸️我的PikPak分享/高清剧集A/合集18"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRT8zZXg3b_VYsn0bCwlVh5o1","type_name":"/🕸️我的PikPak分享/高清剧集A/合集3"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRT9eYeBGyw1kt1HkijKmL_o1","type_name":"/🕸️我的PikPak分享/高清剧集A/合集5"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRTA2HOg3b_VYsn0bCwlhKyo1","type_name":"/🕸️我的PikPak分享/高清剧集A/合集8"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRTCK4Lg3b_VYsn0bCwmeWXo1","type_name":"/🕸️我的PikPak分享/高清剧集B/合集24"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRTCmbnCfOi1Zl2Ft25Sjw8o1","type_name":"/🕸️我的PikPak分享/高清剧集B/合集30"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRTD2ceyM2NQYlKo78MEzY0o1","type_name":"/🕸️我的PikPak分享/高清剧集B/合集32"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRTDH_KBGyw1kt1HkijMHG5o1","type_name":"/🕸️我的PikPak分享/高清剧集B/合集34"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRTDh9fQgqv_6lSY5Z75Z5Yo1","type_name":"/🕸️我的PikPak分享/高清剧集B/合集35"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRTDyshQgqv_6lSY5Z75a42o1","type_name":"/🕸️我的PikPak分享/高清剧集B/合集37"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRTEG11roRROhEkho_4qFPYo1","type_name":"/🕸️我的PikPak分享/高清剧集B/合集39"},
|
||||
{"type_id":"https://mypikpak.com/s/VNRTFVbPBGyw1kt1HkijMoBko1","type_name":"/🕸️我的PikPak分享/高清剧集B/合集41"}
|
||||
|
||||
]
|
BIN
lib/pikpakclass.json.db.gz
Normal file
BIN
lib/pikpakclass.json.db.gz
Normal file
Binary file not shown.
10
lib/pikpakclass.template.json
Normal file
10
lib/pikpakclass.template.json
Normal file
@ -0,0 +1,10 @@
|
||||
[
|
||||
{
|
||||
"type_id":"pikpak分享地址1",
|
||||
"type_name":"分享名稱1"
|
||||
},
|
||||
{
|
||||
"type_id":"pikpak分享地址2",
|
||||
"type_name":"分享名稱2"
|
||||
}
|
||||
]
|
15
lib/pushshare.txt
Normal file
15
lib/pushshare.txt
Normal file
@ -0,0 +1,15 @@
|
||||
https://www.alipan.com/s/self 我的阿里云盘
|
||||
https://pan.quark.cn/s/self 我的夸克云盘
|
||||
https://drive.uc.cn/s/self 我的UC云盘
|
||||
https://115.com/s/self 我的115云盘
|
||||
https://www.123pan.com/s/self 我的123云盘
|
||||
https://cloud.189.cn/s/self 我的189云盘
|
||||
https://pan.xunlei.com/s/self 我的迅雷云盘
|
||||
https://mypikpak.com/s/self 我的PikPak云盘
|
||||
https://docs.qq.com/sheet/DVXp5Q2dRTVRXb2VS?tab=ith4wt 阿里云资源每天更新
|
||||
https://docs.qq.com/sheet/DVHpJVmRhT3ViV09Q?tab=ppx5bp 资源大全3
|
||||
https://docs.qq.com/sheet/DVHpJVmRhT3ViV09Q?tab=qvnx1e 星火阿里云盘
|
||||
https://docs.qq.com/sheet/DVXFYSURJRG9qbWJi?tab=BB08J2 短剧更新1
|
||||
https://docs.qq.com/sheet/DVXFYSURJRG9qbWJi?tab=x5a2cy 短剧更新2
|
||||
magnet:?xt=urn:btih:448aa6f77f1c1a14eb233b1f06b614a8d3193c51 绝命毒师1-5季 pushset1
|
||||
magnet:?xt=urn:btih:6EF000064DC6402E00E65F3B2029226196CD55C1 权力的游戏第八季 pushset2
|
8
lib/quarkshare.txt
Normal file
8
lib/quarkshare.txt
Normal file
@ -0,0 +1,8 @@
|
||||
self 我的夸克网盘
|
||||
885fd4ba2d92 每日短剧更新
|
||||
432b5cd3a225 短剧162g
|
||||
c54a8e47f82f 短剧114g
|
||||
047991d5955e 经典剧集
|
||||
ecdf7d6ffaaa 经典港剧合集1
|
||||
187062318ebc 经典港剧合集2
|
||||
9ebb62b93194 2023-2024跨年晚会合集
|
1
lib/sambashare.template.txt
Normal file
1
lib/sambashare.template.txt
Normal file
@ -0,0 +1 @@
|
||||
user:pass@192.168.1.1/share Samba分享 0 updated_at DESC
|
BIN
lib/sing-box.tar.xz
Normal file
BIN
lib/sing-box.tar.xz
Normal file
Binary file not shown.
1
lib/sing-box.tar.xz.md5
Normal file
1
lib/sing-box.tar.xz.md5
Normal file
@ -0,0 +1 @@
|
||||
42df056144fa4e08ea39b624be4cd477
|
200
lib/singbox.json
Normal file
200
lib/singbox.json
Normal file
@ -0,0 +1,200 @@
|
||||
{
|
||||
"log": {
|
||||
"level": "debug",
|
||||
"timestamp": true
|
||||
},
|
||||
"dns": {
|
||||
"servers": [
|
||||
{
|
||||
"tag": "remote",
|
||||
"address": "https://8.8.8.8/dns-query",
|
||||
"strategy": "prefer_ipv4",
|
||||
"detour": "select"
|
||||
},
|
||||
{
|
||||
"tag": "local",
|
||||
"address": "https://223.5.5.5/dns-query",
|
||||
"strategy": "prefer_ipv4",
|
||||
"detour": "direct"
|
||||
},
|
||||
{
|
||||
"tag": "block",
|
||||
"address": "rcode://success"
|
||||
},
|
||||
{
|
||||
"tag": "fakeip",
|
||||
"address": "fakeip"
|
||||
}
|
||||
],
|
||||
"rules": [
|
||||
{
|
||||
"outbound": ["any"],
|
||||
"server": "local"
|
||||
},
|
||||
{
|
||||
"clash_mode": "Global",
|
||||
"server": "remote"
|
||||
},
|
||||
{
|
||||
"clash_mode": "Direct",
|
||||
"server": "local"
|
||||
}
|
||||
],
|
||||
"fakeip": {
|
||||
"enabled": true,
|
||||
"inet4_range": "198.18.0.0/15",
|
||||
"inet6_range": "fc00::/18"
|
||||
},
|
||||
"strategy": "prefer_ipv4",
|
||||
"independent_cache": true,
|
||||
"reverse_mapping": true
|
||||
},
|
||||
"inbounds": [
|
||||
{
|
||||
"type": "mixed",
|
||||
"tag": "mixed-in",
|
||||
"listen": "0.0.0.0",
|
||||
"listen_port": 10172,
|
||||
"tcp_fast_open":true,
|
||||
"sniff": false,
|
||||
"sniff_override_destination": false,
|
||||
"domain_strategy": "prefer_ipv4",
|
||||
"set_system_proxy": false
|
||||
},
|
||||
{
|
||||
"type": "socks",
|
||||
"tag": "socks-in",
|
||||
"listen": "0.0.0.0",
|
||||
"listen_port": 10173,
|
||||
"tcp_fast_open":true,
|
||||
"sniff": false,
|
||||
"sniff_override_destination": false,
|
||||
"domain_strategy": "prefer_ipv4"
|
||||
},
|
||||
{
|
||||
"type": "mixed",
|
||||
"tag": "mixed-in2",
|
||||
"listen": "0.0.0.0",
|
||||
"listen_port": 10174,
|
||||
"tcp_fast_open":true,
|
||||
"sniff": false,
|
||||
"sniff_override_destination": false,
|
||||
"domain_strategy": "prefer_ipv4",
|
||||
"set_system_proxy": false
|
||||
},
|
||||
{
|
||||
"type": "mixed",
|
||||
"tag": "mixed-in3",
|
||||
"listen": "0.0.0.0",
|
||||
"listen_port": 10175,
|
||||
"tcp_fast_open":true,
|
||||
"sniff": false,
|
||||
"sniff_override_destination": false,
|
||||
"domain_strategy": "prefer_ipv4",
|
||||
"set_system_proxy": false
|
||||
}
|
||||
],
|
||||
"outbounds": [
|
||||
{
|
||||
"type": "selector",
|
||||
"tag": "select",
|
||||
"outbounds": [
|
||||
"urltest"
|
||||
],
|
||||
"default": "urltest"
|
||||
},
|
||||
{
|
||||
"type": "urltest",
|
||||
"tag": "urltest",
|
||||
"interval": "30m",
|
||||
"idle_timeout": "60m",
|
||||
"interrupt_exist_connections": false,
|
||||
"outbounds": null
|
||||
},
|
||||
{
|
||||
"type": "direct",
|
||||
"tag": "direct"
|
||||
},
|
||||
{
|
||||
"type": "block",
|
||||
"tag": "block"
|
||||
},
|
||||
{
|
||||
"type": "dns",
|
||||
"tag": "dns-out"
|
||||
}
|
||||
],
|
||||
"route": {
|
||||
"rules": [
|
||||
{
|
||||
"type": "logical",
|
||||
"mode": "or",
|
||||
"rules": [
|
||||
{
|
||||
"protocol": "dns"
|
||||
},
|
||||
{
|
||||
"port": 53
|
||||
}
|
||||
],
|
||||
"outbound": "dns-out"
|
||||
},
|
||||
{
|
||||
"ip_is_private": true,
|
||||
"outbound": "direct"
|
||||
},
|
||||
{
|
||||
"inbound":[
|
||||
"mixed-in2"
|
||||
],
|
||||
"outbound":"select2"
|
||||
},
|
||||
{
|
||||
"inbound":[
|
||||
"mixed-in3"
|
||||
],
|
||||
"outbound":"select3"
|
||||
},
|
||||
{
|
||||
"clash_mode": "Direct",
|
||||
"outbound": "direct"
|
||||
},
|
||||
{
|
||||
"clash_mode": "Global",
|
||||
"outbound": "select"
|
||||
},
|
||||
{
|
||||
"type": "logical",
|
||||
"mode": "or",
|
||||
"rules": [
|
||||
{
|
||||
"port": 853
|
||||
},
|
||||
{
|
||||
"network": "udp",
|
||||
"port": 443
|
||||
},
|
||||
{
|
||||
"protocol": "stun"
|
||||
}
|
||||
],
|
||||
"outbound": "block"
|
||||
}
|
||||
],
|
||||
"auto_detect_interface": false
|
||||
},
|
||||
"experimental": {
|
||||
"cache_file": {
|
||||
"enabled": true,
|
||||
"store_rdrc": true
|
||||
},
|
||||
"clash_api": {
|
||||
"external_controller": "0.0.0.0:19090",
|
||||
"external_ui": "ui",
|
||||
"external_ui_download_url": "https://github.com/MetaCubeX/metacubexd/archive/refs/heads/gh-pages.zip",
|
||||
"external_ui_download_detour": "select",
|
||||
"default_mode": "Rule"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
178
lib/sortName.js
Normal file
178
lib/sortName.js
Normal file
File diff suppressed because one or more lines are too long
59
lib/tgsearch.json
Normal file
59
lib/tgsearch.json
Normal file
@ -0,0 +1,59 @@
|
||||
{
|
||||
"recommend":"名称",
|
||||
"class":[
|
||||
{
|
||||
"type_id":"名称",
|
||||
"type_name":"名称"
|
||||
},
|
||||
{
|
||||
"type_id":"片名",
|
||||
"type_name":"片名"
|
||||
},
|
||||
{
|
||||
"type_id":"LIST:iso,原盘",
|
||||
"type_name":"ISO,原盘"
|
||||
},
|
||||
{
|
||||
"type_id":"ali",
|
||||
"type_name":"阿里"
|
||||
},
|
||||
{
|
||||
"type_id":"quark",
|
||||
"type_name":"夸克"
|
||||
},
|
||||
{
|
||||
"type_id":"uc.cn",
|
||||
"type_name":"UC"
|
||||
},
|
||||
{
|
||||
"type_id":"123",
|
||||
"type_name":"123"
|
||||
},
|
||||
{
|
||||
"type_id":"189",
|
||||
"type_name":"189"
|
||||
},
|
||||
{
|
||||
"type_id":"LIST:115,anxia",
|
||||
"type_name":"115"
|
||||
},
|
||||
{
|
||||
"type_id":"pikpak",
|
||||
"type_name":"PikPak"
|
||||
},
|
||||
{
|
||||
"type_id":"xunlei",
|
||||
"type_name":"迅雷"
|
||||
},
|
||||
{
|
||||
"type_id":"mp4",
|
||||
"type_name":"MP4"
|
||||
},
|
||||
{
|
||||
"type_id":"LIST:测试1,测试2",
|
||||
"type_name":"测试"
|
||||
}
|
||||
],
|
||||
"jx":0,
|
||||
"parse":0
|
||||
}
|
15
lib/thundershare.txt
Normal file
15
lib/thundershare.txt
Normal file
@ -0,0 +1,15 @@
|
||||
self 我的迅雷雲盤
|
||||
VNg6eg34ncoRGHp98SBeYRUmA1?pwd=ywp2 刘德华高清电影电视剧全集
|
||||
VNg6YRPKiFWtWRrEfTcmpo4nA1?pwd=3dk6 李连杰电影合集
|
||||
VNg6af5Yu4IVpCplLZEXpTCHA1?pwd=e3tk 周星驰电影合集
|
||||
VNg6ZDjEu4IVpCplLZEXovZMA1?pwd=i83r 成龙电影合集
|
||||
VNg6aYN6S67q560x6uBmiTxGA1?pwd=vcff 金庸武侠作品电视剧版合集
|
||||
VNgOl6jLwFWEAL3PSyCmyc9vA1?pwd=z3jn 邵氏电影合集中文字幕
|
||||
VNfYsaHU3GXpR3Wc6X2vLDRXA1?pwd=k327 1962-2015[欧美][动作][007系列4K][24部][409GB]
|
||||
VNgOliKdkJeHX8To1KuRhkabA1?pwd=8dfq 中国大陆老电影合集
|
||||
VNgOnbo2VGbPDhR48Bgvh0GMA1?pwd=n59u TVB香港电视剧
|
||||
VNgOkmDE9KxEdCnfuqBq-nh6A1?pwd=nr2b 豆瓣top电影合集
|
||||
VNfGhoL9ptGD3gtENXxflDZ6A1?pwd=4a3t 5TB精选迅雷云盘资源
|
||||
VNgOlIg5E5iq61_VnPABvO3BA1?pwd=bxix 港台大陆三级影片
|
||||
VNg9Y19oPimZP2d2xRhFUkQ6A1?pwd=nr2c 中国电视剧合集
|
||||
VNjwyIJVrUPzmOwSA07z6EP1A1?pwd=a84q 抖音短剧合集
|
97
lib/tokenm.json
Normal file
97
lib/tokenm.json
Normal file
@ -0,0 +1,97 @@
|
||||
{
|
||||
"token":"",
|
||||
"open_token":"",
|
||||
"open_api_url":"postparam|http://api.extscreen.com/aliyundrive/token",
|
||||
"oauth_client_id":"",
|
||||
"oauth_client_secret":"",
|
||||
"oauth_auth_url":"",
|
||||
"oauth_refresh_url":"",
|
||||
"is_vip":true,
|
||||
"vip_thread_limit":32,
|
||||
"vip_thread_limit_night":"19-23=10",
|
||||
"vod_flags":"4kz|auto",
|
||||
"quark_thread_limit":32,
|
||||
"quark_thread_limit_night":"19-23=10",
|
||||
"quark_is_guest":false,
|
||||
"quark_vip_thread_limit":32,
|
||||
"quark_vip_thread_limit_night":"19-23=10",
|
||||
"quark_flags":"4kz|auto",
|
||||
"uc_thread_limit":10,
|
||||
"uc_is_vip":false,
|
||||
"uc_vip_thread_limit":10,
|
||||
"uc_flags":"4kz|auto",
|
||||
"uc_thread_limit_night":"19-23=10",
|
||||
"uc_vip_thread_limit_night":"19-23=10",
|
||||
"thunder_thread_limit":2,
|
||||
"thunder_is_vip":false,
|
||||
"thunder_vip_thread_limit":2,
|
||||
"thunder_flags":"4kz",
|
||||
"aliproxy":"",
|
||||
"aliproxy_url":"./aliproxy.tar.xz",
|
||||
"proxy":"",
|
||||
"danmu":true,
|
||||
"quark_danmu":true,
|
||||
"quark_cookie":"",
|
||||
"uc_cookie":"",
|
||||
"thunder_username":"15722423366",
|
||||
"thunder_password":"zhoupeng8324",
|
||||
"thunder_captchatoken":"ck0.SvwI_x1It3u5xI95--lsLIhGEDZ9urFFKDDUSoYnyAo0TrjNT8SlWy4owwktNKYSMwwCe8R845IvUl_oOSJigSiwxjUHA9e4dWseprvWFGJxwLE5xRol4zes2smaO4eFZfp1evFFRq1ukG3lGmrtL1k2ynGbi5ghn5RCMAhbfpqNmLWQDZZLINyypOrM-kHk_ftubWxYRQrIB2-EfSzI-n5hVM3NHx74EiQgquucT_Ikskci5bOBGUMxJtDCOqCondxHxvT1D4mdZ0rVIPHiaAmIJw0keU07Iby8H8QMi9UJziNnGNc1VFGe8YZpKXvMRpoe--Jut2b5a1B5H0-NTaDTSPpUcddUrke1LeAO5zW50b4Ttvv06BGxIcgsRZuO8foP4BNFWVt5uM1qY6ausQ.ClQIhYCewd0yEhBYcXAwa0pCWFdod2FUcEI2GgcxLjkxLjExIg5wYW4ueHVubGVpLmNvbSogNjgwYzE0ZmUxY2E0ZGIwZmUyOTkwMmMyY2Y4N2EwZjkSgAE7NYiYSzwKnyv-DTaj2cCLned0tnS5qEz8LUFMiA4leAx-1Ams5lBvn1L0IwMYKpS77M1opVfrrQ2NWbgKqT20pFW5WefcIiMyd21k1Y3WDDxeNTbAu8ZU8Llqdzl4qPmj18JCU95qPQ93ve3vw6CqQFw8MiZ1z_wLDOSbo5kTNA",
|
||||
"yd_auth":"Basic cGM6MTU3MjI0MjMzNjY6S09qVWdiVnl8MXxSQ1N8MTc0NTU5ODc4MTY5OHxFdXkzWEhaQ011bkdHNWM2UHJZd1k0V1FQVzNCZlRhSVY0YUI3ejFPOXBJQk5YZVAzUlJGbmZLRU1TbFpzQWV1c09xNUI0Q3RYVHh5SXFxR1ozbVVFU2o4b2RqeEt0eDZVemF3NXVmSTFFYzNpZnJ5aGw5MzJobEV2aUJQOHEzWTVvNW40VWE0SWpLX3VnN1JKUjlwRkswT0M4RjhBX1ZlS3VCQWNiODlXdTAt",
|
||||
"yd_thread_limit":4,
|
||||
"yd_flags":"auto|4kz",
|
||||
"yd_danmu":true,
|
||||
"pikpak_username":"",
|
||||
"pikpak_password":"",
|
||||
"pikpak_flags":"4kz",
|
||||
"pikpak_thread_limit":2,
|
||||
"pikpak_vip_thread_limit":2,
|
||||
"pikpak_proxy":"proxy",
|
||||
"pikpak_proxy_onlyapi":false,
|
||||
"pikpak_danmu":true,
|
||||
"wgcf_key":"",
|
||||
"wgcf_key2":"",
|
||||
"wgcf_ipport":"",
|
||||
"wgcf_xray_url":"./xray.gz",
|
||||
"wgcf_geoip_url":"./geoip.dat.gz",
|
||||
"wgcf_json_url":"./wgcf.json",
|
||||
"wgcf_vless_id":"",
|
||||
"wgcf_vless_optname":"singapore.com:443",
|
||||
"wgcf_vless_worker":"",
|
||||
"wgcf_vless_path":"/?ed=2048",
|
||||
"wgcf_vless_protocol":"vless",
|
||||
"wgcf_vless_network":"ws",
|
||||
"wgcf_vless_tls":false,
|
||||
"libxl_url":"./libxlsdk.tar.xz",
|
||||
"youtube_proxy":"proxy",
|
||||
"singbox_url":"./sing-box.tar.xz",
|
||||
"singbox_subscribe_url":"",
|
||||
"singbox_clash2singbox_url":"./clash2singbox.tar.xz",
|
||||
"singbox_template_url":"./singbox.json",
|
||||
"singbox_wgcf_json_url":"./wgcf2singbox.json",
|
||||
"pan115_cookie":"",
|
||||
"pan115_thread_limit":0,
|
||||
"pan115_vip_thread_limit":0,
|
||||
"pan115_is_vip":false,
|
||||
"pan115_flags":"4kz",
|
||||
"pan115_speed_limit":0,
|
||||
"pan115_speed_limit_mobile":10485760,
|
||||
"pan115_auto_delete":true,
|
||||
"pan115_delete_code":"",
|
||||
"tgsearch_url":"./tgsearch.tar.xz",
|
||||
"tgsearch_api_id":"22305000",
|
||||
"tgsearch_api_hash":"40f2aab6d082aa295903c8614a3b8b38",
|
||||
"tgsearch_api_session":"eyJweS9vYmplY3QiOiAidGVsZXRob24uX2ltcGwuc2Vzc2lvbi5zZXNzaW9uLlNlc3Npb24iLCAiZGNzIjogW3sicHkvb2JqZWN0IjogInRlbGV0aG9uLl9pbXBsLnNlc3Npb24uc2Vzc2lvbi5EYXRhQ2VudGVyIiwgImlkIjogMSwgImlwdjRfYWRkciI6ICIxNDkuMTU0LjE3NS41NDo0NDMiLCAiaXB2Nl9hZGRyIjogbnVsbCwgImF1dGgiOiB7InB5L2I2NCI6ICJHZk5TMmR1dVkreVZyNDhQeExReVJoaFgvT0h1Q0xFMmEvYldTMkIxR3k2aDhRR0xFQitrOExSUnd6c2VzWWpGTjdSdmVidFIzZ1lUYVhEeTRpU1dMWEZHNVRrdHY0REh4TTBlalVPVWhmM25KVWF4NmtSRVZ1LzVpeXlOSHlYc2hnZHg4NUVRa2NSd3RYbTRLRW1XaWJIRjNpZ1hXakhJQk0rK3JETFIyQjNXTXd1MFQzUTlzbWhSckRQaytldFlGSFhFclJFeDVGZ2k1RXRzWE8wS3gvak90V0RuSGZhYUVWU2dyak5UcmREYmpzUmRsUVpOeVRYMXNXdHNZYjZrSXBRc2dtSVRmclJ0RHhtclVlMG1wSitpSWtudXQzM1BlMlQwSDk1T1NQKy8xV21CWFpmTXhJT3JuSmxNZW1GYUY4ZWYxaS9oOUJISVJMeTJoUUxkM3c9PSJ9fV0sICJ1c2VyIjogeyJweS9vYmplY3QiOiAidGVsZXRob24uX2ltcGwuc2Vzc2lvbi5zZXNzaW9uLlVzZXIiLCAiaWQiOiAxNDM2MTU0OTAzLCAiZGMiOiAxLCAiYm90IjogZmFsc2UsICJ1c2VybmFtZSI6IG51bGx9LCAic3RhdGUiOiB7fX0=",
|
||||
"tgsearch_api_session_v1":"1AZWarzYBuxnzUtnbrmPsla-PD8S0MkYYV_zh7gixNmv21ktgdRsuofEBixAfpPC0UcM7HrGIxTe0b3m7Ud4GE2lw8uIkli1xRuU5Lb-Ax8TNHo1DlIX95yVGsepERFbv-YssjR8l7IYHcfOREJHEcLV5uChJlomxxd4oF1oxyATPvqwy0dgd1jMLtE90PbJoUawz5PnrWBR1xK0RMeRYIuRLbFztCsf4zrVg5x32mhFUoK4zU63Q247EXZUGTck19bFrbGG-pCKULIJiE360bQ8Zq1HtJqSfoiJJ7rd9z3tk9B_eTkj_v9VpgV2XzMSDq5yZTHphWhfHn9Yv4fQRyES8toUC3d8=",
|
||||
"tgsearch_api_proxy":"proxy",
|
||||
"tgsearch_api_url":"http://127.0.0.1:10199/",
|
||||
"tgsearch_media_url":"http://127.0.0.1:10199/",
|
||||
"allinone_url":"./allinone.tar.xz",
|
||||
"pan_order":"ali|quark|uc|123|189|115|yd|thunder|pikpak",
|
||||
"pan123_username":"17312915936",
|
||||
"pan123_password":"zhoupeng8324",
|
||||
"pan123_flags":"4kz",
|
||||
"pan189_username":"17312915936",
|
||||
"pan189_password":"Zjp980324@",
|
||||
"pan189_flags":"4kz",
|
||||
"uc_ut":"AARvaOzeXc43+r0KR1Q93tK10ZhhVCYznDAlO5y49+qic+Wrupk2+0uL7D178z7OuQM="
|
||||
}
|
97
lib/tokentemplate.json
Normal file
97
lib/tokentemplate.json
Normal file
@ -0,0 +1,97 @@
|
||||
{
|
||||
"token":"",
|
||||
"open_token":"",
|
||||
"open_api_url":"postparam|http://api.extscreen.com/aliyundrive/token",
|
||||
"oauth_client_id":"",
|
||||
"oauth_client_secret":"",
|
||||
"oauth_auth_url":"",
|
||||
"oauth_refresh_url":"",
|
||||
"is_vip":true,
|
||||
"vip_thread_limit":32,
|
||||
"vip_thread_limit_night":"19-23=10",
|
||||
"vod_flags":"4kz|auto",
|
||||
"quark_thread_limit":32,
|
||||
"quark_thread_limit_night":"19-23=10",
|
||||
"quark_is_guest":false,
|
||||
"quark_vip_thread_limit":32,
|
||||
"quark_vip_thread_limit_night":"19-23=10",
|
||||
"quark_flags":"4kz|auto",
|
||||
"uc_thread_limit":10,
|
||||
"uc_is_vip":false,
|
||||
"uc_vip_thread_limit":10,
|
||||
"uc_flags":"4kz|auto",
|
||||
"uc_thread_limit_night":"19-23=10",
|
||||
"uc_vip_thread_limit_night":"19-23=10",
|
||||
"thunder_thread_limit":2,
|
||||
"thunder_is_vip":false,
|
||||
"thunder_vip_thread_limit":2,
|
||||
"thunder_flags":"4kz",
|
||||
"aliproxy":"",
|
||||
"aliproxy_url":"./aliproxy.tar.xz",
|
||||
"proxy":"",
|
||||
"danmu":true,
|
||||
"quark_danmu":true,
|
||||
"quark_cookie":"",
|
||||
"uc_cookie":"",
|
||||
"thunder_username":"",
|
||||
"thunder_password":"",
|
||||
"thunder_captchatoken":"",
|
||||
"yd_auth":"",
|
||||
"yd_thread_limit":4,
|
||||
"yd_flags":"auto|4kz",
|
||||
"yd_danmu":true,
|
||||
"pikpak_username":"",
|
||||
"pikpak_password":"",
|
||||
"pikpak_flags":"4kz",
|
||||
"pikpak_thread_limit":2,
|
||||
"pikpak_vip_thread_limit":2,
|
||||
"pikpak_proxy":"proxy",
|
||||
"pikpak_proxy_onlyapi":false,
|
||||
"pikpak_danmu":true,
|
||||
"wgcf_key":"",
|
||||
"wgcf_key2":"",
|
||||
"wgcf_ipport":"",
|
||||
"wgcf_xray_url":"./xray.gz",
|
||||
"wgcf_geoip_url":"./geoip.dat.gz",
|
||||
"wgcf_json_url":"./wgcf.json",
|
||||
"wgcf_vless_id":"",
|
||||
"wgcf_vless_optname":"singapore.com:443",
|
||||
"wgcf_vless_worker":"",
|
||||
"wgcf_vless_path":"/?ed=2048",
|
||||
"wgcf_vless_protocol":"vless",
|
||||
"wgcf_vless_network":"ws",
|
||||
"wgcf_vless_tls":false,
|
||||
"libxl_url":"./libxlsdk.tar.xz",
|
||||
"youtube_proxy":"proxy",
|
||||
"singbox_url":"./sing-box.tar.xz",
|
||||
"singbox_subscribe_url":"",
|
||||
"singbox_clash2singbox_url":"./clash2singbox.tar.xz",
|
||||
"singbox_template_url":"./singbox.json",
|
||||
"singbox_wgcf_json_url":"./wgcf2singbox.json",
|
||||
"pan115_cookie":"",
|
||||
"pan115_thread_limit":0,
|
||||
"pan115_vip_thread_limit":0,
|
||||
"pan115_is_vip":false,
|
||||
"pan115_flags":"4kz",
|
||||
"pan115_speed_limit":0,
|
||||
"pan115_speed_limit_mobile":10485760,
|
||||
"pan115_auto_delete":true,
|
||||
"pan115_delete_code":"",
|
||||
"tgsearch_url":"./tgsearch.tar.xz",
|
||||
"tgsearch_api_id":"",
|
||||
"tgsearch_api_hash":"",
|
||||
"tgsearch_api_session":"",
|
||||
"tgsearch_api_session_v1":"",
|
||||
"tgsearch_api_proxy":"proxy",
|
||||
"tgsearch_api_url":"http://127.0.0.1:10199/",
|
||||
"tgsearch_media_url":"http://127.0.0.1:10199/",
|
||||
"allinone_url":"./allinone.tar.xz",
|
||||
"pan_order":"ali|quark|uc|123|189|115|yd|thunder|pikpak",
|
||||
"pan123_username":"",
|
||||
"pan123_password":"",
|
||||
"pan123_flags":"4kz",
|
||||
"pan189_username":"",
|
||||
"pan189_password":"",
|
||||
"pan189_flags":"4kz",
|
||||
"uc_ut":""
|
||||
}
|
13
lib/ucshare.txt
Normal file
13
lib/ucshare.txt
Normal file
@ -0,0 +1,13 @@
|
||||
self 我的UC网盘
|
||||
10b31a7c5f844 资源分享
|
||||
42e08284433b4?pwd=NZQb 影视ziyuan每日更新
|
||||
c0503fdee6644 2024最新精整豆瓣TOP250部
|
||||
391b86c09cd24 2023日剧
|
||||
21f04a22052f4 2023韩剧
|
||||
369e30038dae4 音乐
|
||||
5e0c900955654 完美世界
|
||||
d695231313ba4 沧元图-东宁府番外篇(2024)
|
||||
db80b739256e4 诛仙2
|
||||
cdbc974cf3c14 斗罗大陆2-绝世唐门4K
|
||||
714a0d7f921b4 七夕之国-2024
|
||||
9cca54e72e7e4 遮天4K
|
262
lib/wgcf.json
Normal file
262
lib/wgcf.json
Normal file
@ -0,0 +1,262 @@
|
||||
{
|
||||
"log": {
|
||||
"loglevel": "debug"
|
||||
},
|
||||
"dns": {
|
||||
"disableFallbackIfMatch": true,
|
||||
"hosts": {},
|
||||
"queryStrategy": "UseIP",
|
||||
"servers": [
|
||||
{
|
||||
"address": "tcp://1.1.1.1",
|
||||
"concurrency": true
|
||||
},
|
||||
{
|
||||
"address": "tcp+local://223.5.5.5:53",
|
||||
"concurrency": true,
|
||||
"domains": [
|
||||
"full:cdn-all.xn--b6gac.eu.org"
|
||||
],
|
||||
"skipFallback": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"outbounds": [
|
||||
{
|
||||
"settings": {
|
||||
"secretKey": "KEY",
|
||||
"mtu": 1400,
|
||||
"peers": [
|
||||
{
|
||||
"publicKey": "bmXOC+F1FxEMF9dyiK2H5/1SUtzH0JuVo51h2wPfgyo=",
|
||||
"endpoint" : "engage.cloudflareclient.com:2408",
|
||||
"keepAlive": 30
|
||||
}
|
||||
],
|
||||
"address": [
|
||||
"172.16.0.2/32",
|
||||
"2606:4700:110:893c:845c:536b:5565:8106/128"
|
||||
],
|
||||
"kernelMode": false,
|
||||
"worker":16
|
||||
},
|
||||
"protocol": "wireguard",
|
||||
"streamSettings": {
|
||||
"network": "tcp"
|
||||
},
|
||||
"tag":"directwarp"
|
||||
},
|
||||
{
|
||||
"settings": {
|
||||
"secretKey": "KEY",
|
||||
"mtu": 1280,
|
||||
"peers": [
|
||||
{
|
||||
"publicKey": "bmXOC+F1FxEMF9dyiK2H5/1SUtzH0JuVo51h2wPfgyo=",
|
||||
"endpoint" : "engage.cloudflareclient.com:2408",
|
||||
"keepAlive": 30
|
||||
}
|
||||
],
|
||||
"address": [
|
||||
"172.16.0.2/32",
|
||||
"2606:4700:110:893c:845c:536b:5565:8106/128"
|
||||
],
|
||||
"kernelMode": false,
|
||||
"worker":16
|
||||
},
|
||||
"protocol": "wireguard",
|
||||
"streamSettings": {
|
||||
"network": "tcp"
|
||||
},
|
||||
"tag":"warpoverwarp",
|
||||
"proxySettings": {
|
||||
"tag": "directwarp",
|
||||
"transportLayer": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"protocol": "vless",
|
||||
"settings": {
|
||||
"vnext": [
|
||||
{
|
||||
"address": "cdn-all.xn--b6gac.eu.org",
|
||||
"port": 443,
|
||||
"users": [
|
||||
{
|
||||
"id": "VLESSID",
|
||||
"encryption": "none",
|
||||
"level":0
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"streamSettings": {
|
||||
"network": "ws",
|
||||
"security": "tls",
|
||||
"tlsSettings": {
|
||||
"serverName": "VLESSCFWORKERNAME",
|
||||
"allowInsecure": true
|
||||
},
|
||||
"wsSettings": {
|
||||
"headers": {
|
||||
"Host": "VLESSCFWORKERNAME"
|
||||
},
|
||||
"path": "/?ed=2048"
|
||||
}
|
||||
},
|
||||
"tag":"vlesscf",
|
||||
"proxySettings": {
|
||||
"tag": "directfragment",
|
||||
"transportLayer": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"protocol": "vless",
|
||||
"settings": {
|
||||
"vnext": [
|
||||
{
|
||||
"address": "cdn-all.xn--b6gac.eu.org",
|
||||
"port": 443,
|
||||
"users": [
|
||||
{
|
||||
"id": "VLESSID",
|
||||
"encryption": "none",
|
||||
"level":0
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"streamSettings": {
|
||||
"network": "ws",
|
||||
"security": "tls",
|
||||
"tlsSettings": {
|
||||
"serverName": "VLESSCFWORKERNAME",
|
||||
"allowInsecure": true
|
||||
},
|
||||
"wsSettings": {
|
||||
"headers": {
|
||||
"Host": "VLESSCFWORKERNAME"
|
||||
},
|
||||
"path": "/?ed=2048"
|
||||
}
|
||||
},
|
||||
"tag":"vlesscfoverwarp",
|
||||
"proxySettings": {
|
||||
"tag": "directwarp",
|
||||
"transportLayer": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"protocol": "freedom",
|
||||
"tag": "direct"
|
||||
},
|
||||
{
|
||||
"protocol": "freedom",
|
||||
"settings":{
|
||||
"fragment": {
|
||||
"packets": "tlshello",
|
||||
"length": "40-60",
|
||||
"interval": "30-50"
|
||||
}
|
||||
},
|
||||
"tag": "directfragment"
|
||||
}
|
||||
]
|
||||
,
|
||||
"inbounds":[
|
||||
{
|
||||
"listen": "0.0.0.0",
|
||||
"port": 10070,
|
||||
"protocol": "http",
|
||||
"settings": {
|
||||
"allowTransparent": true
|
||||
},
|
||||
"tag": "http"
|
||||
},
|
||||
{
|
||||
"port": 10071,
|
||||
"protocol": "socks",
|
||||
"settings": {
|
||||
"udp": true,
|
||||
"auth": "noauth"
|
||||
},
|
||||
"tag":"socks5"
|
||||
},
|
||||
{
|
||||
"port": 10072,
|
||||
"protocol": "socks",
|
||||
"settings": {
|
||||
"udp": true,
|
||||
"auth": "noauth"
|
||||
},
|
||||
"tag":"socks5overvless"
|
||||
},
|
||||
{
|
||||
"port": 10073,
|
||||
"protocol": "socks",
|
||||
"settings": {
|
||||
"udp": true,
|
||||
"auth": "noauth"
|
||||
},
|
||||
"tag":"socks5overwarpoverwarp"
|
||||
},
|
||||
{
|
||||
"port": 10074,
|
||||
"protocol": "socks",
|
||||
"settings": {
|
||||
"udp": true,
|
||||
"auth": "noauth"
|
||||
},
|
||||
"tag":"socks5overvlessoverwarp"
|
||||
}
|
||||
],
|
||||
"routing": {
|
||||
"domainStrategy": "AsIs",
|
||||
"rules": [
|
||||
{
|
||||
"type": "field",
|
||||
"ip": [
|
||||
"127.0.0.1"
|
||||
],
|
||||
"outboundTag": "direct"
|
||||
},
|
||||
{
|
||||
"type": "field",
|
||||
"inboundTag": [
|
||||
"socks5"
|
||||
],
|
||||
"outboundTag": "directwarp"
|
||||
},
|
||||
{
|
||||
"type": "field",
|
||||
"inboundTag": [
|
||||
"socks5overvless"
|
||||
],
|
||||
"outboundTag": "vlesscf"
|
||||
},
|
||||
{
|
||||
"type": "field",
|
||||
"inboundTag": [
|
||||
"http"
|
||||
],
|
||||
"outboundTag": "vlesscf"
|
||||
},
|
||||
{
|
||||
"type": "field",
|
||||
"inboundTag": [
|
||||
"socks5overwarpoverwarp"
|
||||
],
|
||||
"outboundTag": "warpoverwarp"
|
||||
},
|
||||
{
|
||||
"type": "field",
|
||||
"inboundTag": [
|
||||
"socks5overvlessoverwarp"
|
||||
],
|
||||
"outboundTag": "vlesscfoverwarp"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
1574
lib/wogg.json
Normal file
1574
lib/wogg.json
Normal file
File diff suppressed because it is too large
Load Diff
42
lib/yo21.txt
Normal file
42
lib/yo21.txt
Normal file
@ -0,0 +1,42 @@
|
||||
鳳凰資訊,http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=http://www.youtube.com/watch?v=if6yQq_JJyY
|
||||
凤凰卫视,http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=http://www.youtube.com/watch?v=dmDg7NfUoSw
|
||||
寰宇新聞, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=B7Zp3d6xXWw
|
||||
鏡新聞, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=5n0y6b0Q25o
|
||||
東森Live, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=R2iMq5LKXco
|
||||
中天新聞, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=oIgbl7t0S_w
|
||||
中天新聞, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/live/oIgbl7t0S_w?feature=share
|
||||
中天新聞2, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=WPfPjbOLNfE
|
||||
三立live, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=FoBfXvlOR6I
|
||||
三立inews, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=CKjSm5ZeehE
|
||||
三立NEWS+, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=oZdzzvxTfUY
|
||||
|
||||
TVBS新聞, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=2mCSYvcfhtc
|
||||
TVBS NEWS LIVE, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=m_dhMSvUCIc
|
||||
民視新聞, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=ylYJSBUgaMA
|
||||
華視新聞, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=wM0g8EoUZ_E
|
||||
中視新聞, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=TCnaIE_SAtM
|
||||
台視新聞, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=xL0ch83RAK8
|
||||
|
||||
EBC東森財經, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=WHEPzbFA3hw
|
||||
三立財經, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=CKjSm5ZeehE
|
||||
NHK WORLD, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=f0lYkdA-Gtw
|
||||
NHK WORLD,https://nhkwlive-xjp.akamaized.net/hls/live/2003458/nhkwlive-xjp-en/index_1M.m3u8?zshijd
|
||||
|
||||
Sky News, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=9Auq9mYxFEE
|
||||
FRANCE 24, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=h3MuIUNCCzI
|
||||
ABC News, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=w_Ma8oQLmSM
|
||||
Euronews English, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=pykpO5kQJ98
|
||||
DW, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=pqabxBKzZ6M
|
||||
ANN News, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=coYw-eVU0Ks
|
||||
KBS KOREA, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=HnfpTMtfFk8
|
||||
|
||||
NBC NEW, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=0IUbD_4ytuo
|
||||
鳳凰資訊, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=sUISafvOieY
|
||||
凤凰卫视, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=dmDg7NfUoSw
|
||||
CCTV中文国际, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=9sE12tg3CmA
|
||||
东森财经股市, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=LbS-xQ67fos
|
||||
公視直播, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=4Uc00FPs27M
|
||||
KOMPASTV, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=4rmf-lk3ito
|
||||
东京新宿, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=DjdUEyjx8GM
|
||||
台灣地震監視, http://127.0.0.1:9978/proxy?do=yt&proxy=proxy&url=https://www.youtube.com/watch?v=Owke6Quk7T0
|
||||
|
1248
lib/youtube.json
Normal file
1248
lib/youtube.json
Normal file
File diff suppressed because it is too large
Load Diff
1
lib/yt.json
Normal file
1
lib/yt.json
Normal file
File diff suppressed because one or more lines are too long
Loading…
x
Reference in New Issue
Block a user