樱花动漫
https://www.yinghuazz.com
分享者: nuo-an (15232)发布时间: 2天前
樱花动漫 https://www.yinghua228.com/ 搜索间隔不能小于30s。不要频繁搜索
{
"articleStyle": 3,
"cacheFirst": false,
"customOrder": 3,
"enableJs": true,
"enabled": true,
"enabledCookieJar": true,
"header": "{\n \"User-Agent\": \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/120.0.0.0 Safari\/537.36\",\n \"Referer\": \"https:\/\/www.yinghuazz.com\/\"\n}",
"injectJs": "(function(){\n'use strict';\nvar C={LP:500,FR:3,SS:1,TH:24};\nif(window.__GESTURE_CFG)Object.assign(C,window.__GESTURE_CFG);\nfunction full(){return document.fullscreenElement||document.webkitFullscreenElement}\nfunction isLS(v){return v&&v.videoWidth&&v.videoHeight?v.videoWidth>=v.videoHeight:false}\nfunction fs(){var v=document.querySelector('video'),ok=full()&&isLS(v);try{ok?screen.orientation.lock('landscape').catch(function(){}):screen.orientation.unlock()}catch(e){}}\ndocument.addEventListener('fullscreenchange',fs);document.addEventListener('webkitfullscreenchange',fs);if(full())fs();\nfunction tip(css){var e=document.createElement('div');e.style.cssText=css+'display:none;opacity:0;transition:opacity .15s';document.body.appendChild(e);return e}\nfunction set(e,t){if(!e)return;if(t==null){e.style.opacity=0;e.__h&&clearTimeout(e.__h);e.__h=setTimeout(function(){e.style.display='none'},160)}else{e.textContent=t;e.style.display='block';e.__h&&clearTimeout(e.__h);e.style.opacity=1}}\nvar TC='position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(0,0,0,.30);color:#fff;padding:10px 20px;border-radius:8px;font-size:16px;font-weight:bold;z-index:99999;pointer-events:none;font-family:-apple-system,sans-serif;white-space:nowrap;';\nfunction fmt(t){t=Math.max(0,Math.floor(t||0));var h=Math.floor(t\/3600),m=Math.floor(t%3600\/60),s=t%60,p=function(n){return n<10?'0'+n:''+n};return(h?h+':'+p(m):m)+':'+p(s)}\nvar TE=null;\nfunction bind(v){\nif(v.__gb)return;v.__gb=true;\nvar G={sx:0,lp:null,ff:false,wp:false,or:1,pt:0,tm:null,sp:false};\nfunction stopL(){if(G.lp){clearTimeout(G.lp);G.lp=null}}\nfunction startL(){G.lp=null;G.ff=true;G.or=v.playbackRate||1;G.wp=v.paused;v.playbackRate=C.FR;if(G.wp){var p=v.play();if(p&&p.catch)p.catch(function(){})}TE=TE||tip(TC);set(TE,'▶▶ '+v.playbackRate+'x')}\nfunction resetFF(){if(!G.ff)return;v.playbackRate=G.or;G.ff=false;set(TE,null);if(G.wp)v.pause()}\nfunction flush(){if(G.sp){G.sp=false;if(isFinite(G.pt))v.currentTime=G.pt}if(G.tm){clearTimeout(G.tm);G.tm=null}}\nfunction onS(e){if(e.touches.length!==1){stopL();return}var t=e.touches[0];G.sx=t.clientX;G.st=v.currentTime||0;G.wp=v.paused;G.or=v.playbackRate||1;stopL();G.lp=setTimeout(startL,C.LP)}\nfunction onM(e){if(e.touches.length!==1)return;stopL();var dx=e.touches[0].clientX-G.sx;if(Math.abs(dx)<=15)return;resetFF();e.preventDefault();var d=v.duration;if(!isFinite(d)||d<=0)return;var nt=Math.max(0,Math.min(d,G.st+dx\/(window.innerWidth*C.SS)*d));G.pt=nt;TE=TE||tip(TC);set(TE,fmt(nt)+' \/ '+fmt(d));if(!G.sp){G.sp=true;G.tm=setTimeout(function(){G.sp=false;if(isFinite(G.pt))v.currentTime=G.pt},C.TH)}}\nfunction onE(){stopL();if(G.ff){resetFF();return}flush();set(TE,null)}\nv.addEventListener('touchstart',onS,{passive:true});v.addEventListener('touchmove',onM,{passive:false});v.addEventListener('touchend',onE);v.addEventListener('touchcancel',onE);\n}\nvar BV=new WeakSet();\nfunction bindAll(){var vs=document.querySelectorAll('video');for(var i=0;i<vs.length;i++){if(!BV.has(vs[i])){BV.add(vs[i]);bind(vs[i])}}}\nbindAll();new MutationObserver(bindAll).observe(document.documentElement,{childList:true,subtree:true});\nconsole.log('[注入] 已启用');\n})();",
"lastUpdateTime": 1794231982819,
"loadWithBaseUrl": true,
"preload": false,
"ruleArticles": "ul.stui-vodlist > li, ul.stui-vodlist__media > li",
"ruleContent": "@js:\n(function () {\n var html = '';\n try { html = String(result || ''); } catch (e0) { html = ''; }\n if (html.length < 3000 || html.indexOf('stui-content__playlist') < 0) {\n try { html = String(java.ajax(baseUrl) || ''); } catch (e1) {}\n }\n var doc = Packages.org.jsoup.Jsoup.parse(html);\n var HOST = 'https:\/\/www.yinghuazz.com';\n\n function abs(u) {\n u = String(u == null ? '' : u);\n if (!u) return '';\n if (u.indexOf('javascript') === 0) return '';\n if (u.indexOf('\/\/') === 0) return 'https:' + u;\n if (u.indexOf('http') === 0) return u;\n return HOST + (u.charAt(0) === '\/' ? u : '\/' + u);\n }\n function trim(s) {\n return String(s == null ? '' : s).replace(\/^[\\s\\u3000]+|[\\s\\u3000]+$\/g, '');\n }\n \/\/ 阅读的 AnalyzeRule.getString() 默认 unescape=true,会把正文做一次 unescapeHtml4,\n \/\/ 所以这里必须「双重转义」:输出 &lt; 这类,过一次反转义后才得到正确的 <。\n function esc(s) {\n return String(s == null ? '' : s)\n .split('&').join('&amp;')\n .split('<').join('&lt;')\n .split('>').join('&gt;')\n .split('\"').join('&quot;');\n }\n function q(s) {\n s = String(s == null ? '' : s);\n var o = '';\n for (var i = 0; i < s.length; i++) {\n var c = s.charAt(i);\n if (c === '\\\\') o += '\\\\\\\\';\n else if (c === '\"') o += '\\\\\"';\n else if (c === '\\n') o += '\\\\n';\n else if (c === '\\r') o += '\\\\r';\n else if (c === '<') o += '\\\\u003c';\n else if (c === '>') o += '\\\\u003e';\n else o += c;\n }\n return '\"' + o + '\"';\n }\n\n var name = '';\n var h1 = doc.select('h1.title').first();\n if (h1) name = trim(String(h1.ownText() || h1.text()).replace(\/\\s+\/g, ' '));\n var posterEl = doc.select('.stui-content__thumb img').first();\n var poster = posterEl ? abs(posterEl.attr('data-original') || posterEl.attr('src')) : '';\n var stateEl = doc.select('.stui-content__thumb .pic-text').first();\n var state = stateEl ? trim(stateEl.text()) : '';\n var introEl = doc.select('#desc p.col-pd').first();\n var intro = introEl ? trim(introEl.text()) : '';\n\n var boxes = doc.select('div.playlist');\n var lines = '';\n var cnt = 0;\n var firstEp = '';\n for (var i = 0; i < boxes.size(); i++) {\n var box = boxes.get(i);\n var h3 = box.select('h3.title').first();\n var ln = h3 ? trim(String(h3.text()).replace(\/\\s+\/g, '')) : '';\n if (!ln) ln = '线路' + (i + 1);\n var as = box.select('ul.stui-content__playlist a');\n var eps = '';\n var n = 0;\n for (var j = 0; j < as.size(); j++) {\n var a = as.get(j);\n var u = abs(a.attr('href'));\n if (!u) continue;\n var t = trim(a.text());\n if (!t) t = '第' + (n + 1) + '集';\n if (n > 0) eps += ',';\n else if (cnt === 0) firstEp = u;\n eps += '{\"t\":' + q(t) + ',\"u\":' + q(u) + '}';\n n++;\n }\n if (!n) continue;\n if (cnt > 0) lines += ',';\n lines += '{\"n\":' + q(ln) + ',\"e\":[' + eps + ']}';\n cnt++;\n }\n function pickUrl(h) {\n h = String(h || '');\n var p = h.indexOf('player_aaaa');\n if (p < 0) return '';\n var b = h.indexOf('{', p);\n if (b < 0) return '';\n var d = 0, e = -1;\n for (var i = b; i < h.length; i++) {\n var c = h.charAt(i);\n if (c === '{') d++;\n else if (c === '}') { d--; if (d === 0) { e = i; break; } }\n }\n if (e < 0) return '';\n try {\n var o = JSON.parse(h.substring(b, e + 1));\n return o && o.url ? String(o.url) : '';\n } catch (err) { return ''; }\n }\n var firstUrl = '';\n if (firstEp) {\n try { firstUrl = pickUrl(java.ajax(firstEp)); } catch (e2) { firstUrl = ''; }\n }\n if (!cnt) {\n return '<div style=\"padding:20px 16px;font-size:15px;line-height:1.8\">没有解析到播放列表,可能站点改版了。'\n + '<br><a href=\"' + esc(baseUrl) + '\" style=\"color:#2f7cf6\">点这里打开原网页<\/a><\/div>';\n }\n\n var CL = [\n 'var D = window.YHDATA || [];',\n 'var v = document.getElementById(\"yh-v\");',\n 'var tip = document.getElementById(\"yh-tip\");',\n 'var boxL = document.getElementById(\"yh-lines\");',\n 'var boxE = document.getElementById(\"yh-eps\");',\n 'var boxI = document.getElementById(\"yh-idx\");',\n 'var curL = 0;',\n 'var curE = 0;',\n 'var curUrl = \"\";',\n 'var hls = null;',\n 'var mode = \"native\";',\n 'var cdn = [',\n ' \"https:\/\/cdn.jsdelivr.net\/npm\/hls.js@1.5.13\/dist\/hls.min.js\",',\n ' \"https:\/\/fastly.jsdelivr.net\/npm\/hls.js@1.5.13\/dist\/hls.min.js\",',\n ' \"https:\/\/unpkg.com\/hls.js@1.5.13\/dist\/hls.min.js\"',\n '];',\n 'var ci = 0;',\n 'var autoSrc = v.getAttribute(\"src\") || \"\";',\n 'var queue = [];',\n 'var watch = null;',\n '',\n 'if (autoSrc && D.length && D[0].e && D[0].e.length) D[0].e[0].v = autoSrc;',\n '',\n 'function say(t) {',\n ' if (t == null) t = \"\";',\n ' if (tip) tip.textContent = String(t);',\n '}',\n '',\n 'function get(url, ok, fail) {',\n ' if (window.fetch) {',\n ' fetch(url, { credentials: \"include\" }).then(function (r) {',\n ' return r.text();',\n ' }).then(ok).catch(fail);',\n ' return;',\n ' }',\n ' var x = new XMLHttpRequest();',\n ' x.open(\"GET\", url, true);',\n ' x.onreadystatechange = function () {',\n ' if (x.readyState === 4) {',\n ' if (x.status >= 200 && x.status < 400) ok(x.responseText);',\n ' else fail();',\n ' }',\n ' };',\n ' x.onerror = fail;',\n ' x.send();',\n '}',\n '',\n 'function pick(html) {',\n ' var p = html.indexOf(\"player_aaaa\");',\n ' if (p < 0) return \"\";',\n ' var b = html.indexOf(\"{\", p);',\n ' if (b < 0) return \"\";',\n ' var d = 0;',\n ' var e = -1;',\n ' for (var i = b; i < html.length; i++) {',\n ' var c = html.charAt(i);',\n ' if (c === \"{\") d++;',\n ' else if (c === \"}\") {',\n ' d--;',\n ' if (d === 0) {',\n ' e = i;',\n ' break;',\n ' }',\n ' }',\n ' }',\n ' if (e < 0) return \"\";',\n ' var o;',\n ' try {',\n ' o = JSON.parse(html.substring(b, e + 1));',\n ' } catch (err) {',\n ' return \"\";',\n ' }',\n ' return o && o.url ? String(o.url) : \"\";',\n '}',\n '',\n 'function clearWatch() {',\n ' if (watch) {',\n ' clearTimeout(watch);',\n ' watch = null;',\n ' }',\n '}',\n '',\n 'function armWatch() {',\n ' clearWatch();',\n ' watch = setTimeout(function () {',\n ' watch = null;',\n ' if (v.readyState < 1) {',\n ' say(\"该线路无响应,正在换线…\");',\n ' autoNext();',\n ' }',\n ' }, 15000);',\n '}',\n '',\n 'function loadHls(cb) {',\n ' if (window.Hls) {',\n ' cb();',\n ' return;',\n ' }',\n ' if (ci >= cdn.length) {',\n ' setModeFail();',\n ' return;',\n ' }',\n ' var s = document.createElement(\"script\");',\n ' s.src = cdn[ci++];',\n ' s.onload = function () {',\n ' if (window.Hls) cb();',\n ' else loadHls(cb);',\n ' };',\n ' s.onerror = function () {',\n ' loadHls(cb);',\n ' };',\n ' document.head.appendChild(s);',\n '}',\n '',\n 'function setModeFail() {',\n ' mode = \"native\";',\n ' say(\"该线路无法播放,正在换线…\");',\n ' autoNext();',\n '}',\n '',\n 'function playHls(u) {',\n ' clearWatch();',\n ' loadHls(function () {',\n ' if (!window.Hls || !Hls.isSupported()) {',\n ' setModeFail();',\n ' return;',\n ' }',\n ' try {',\n ' if (hls) {',\n ' try { hls.destroy(); } catch (e) { }',\n ' hls = null;',\n ' }',\n ' hls = new Hls({ maxBufferLength: 30 });',\n ' hls.on(Hls.Events.ERROR, function (ev, d) {',\n ' if (d && d.fatal) {',\n ' curUrl = \"\";',\n ' say(\"播放出错,正在换线…\");',\n ' autoNext();',\n ' }',\n ' });',\n ' hls.loadSource(u);',\n ' hls.attachMedia(v);',\n ' var p = v.play();',\n ' if (p && p.catch) p.catch(function () { });',\n ' say(\"已切换兼容播放模式\");',\n ' armWatch();',\n ' } catch (e2) {',\n ' setModeFail();',\n ' }',\n ' });',\n '}',\n '',\n 'function playUrl(u) {',\n ' if (u.indexOf(\"\/\/\") === 0) u = \"https:\" + u;',\n ' curUrl = u;',\n ' say(\"▶ \" + D[curL].e[curE].t + \" · \" + D[curL].n);',\n ' if (mode === \"hls\") {',\n ' playHls(u);',\n ' return;',\n ' }',\n ' armWatch();',\n ' var cur = v.getAttribute(\"src\") || \"\";',\n ' if (cur !== u) {',\n ' v.src = u;',\n ' try { v.load(); } catch (e) { }',\n ' }',\n ' try {',\n ' var p = v.play();',\n ' if (p && p.catch) p.catch(function () { });',\n ' } catch (e2) { }',\n '}',\n '',\n 'v.addEventListener(\"error\", function () {',\n ' if (!curUrl) return;',\n ' var err = v.error;',\n ' if (err && err.code === 1) return;',\n ' var failed = curUrl;',\n ' curUrl = \"\";',\n ' if (D[curL] && D[curL].e && D[curL].e[curE]) D[curL].e[curE].v = \"\";',\n ' if (mode === \"native\" && err && (err.code === 3 || err.code === 4)) {',\n ' mode = \"hls\";',\n ' playHls(failed);',\n ' return;',\n ' }',\n ' say(\"播放出错,正在换线…\");',\n ' autoNext();',\n '}, false);',\n '',\n 'v.addEventListener(\"loadedmetadata\", clearWatch, false);',\n 'v.addEventListener(\"canplay\", clearWatch, false);',\n 'v.addEventListener(\"playing\", clearWatch, false);',\n '',\n 'function chip(cls, text, attr, val) {',\n ' var el = document.createElement(\"span\");',\n ' el.className = cls;',\n ' el.setAttribute(attr, String(val));',\n ' el.textContent = text == null ? \"\" : String(text);',\n ' return el;',\n '}',\n '',\n 'function tabs() {',\n ' if (!boxL) return;',\n ' while (boxL.firstChild) boxL.removeChild(boxL.firstChild);',\n ' for (var i = 0; i < D.length; i++) {',\n ' boxL.appendChild(chip(\"yh-tab\" + (i === curL ? \" on\" : \"\"), D[i].n, \"data-l\", i));',\n ' }',\n '}',\n '',\n 'function eps() {',\n ' if (!boxE) return;',\n ' var e = D[curL].e;',\n ' while (boxE.firstChild) boxE.removeChild(boxE.firstChild);',\n ' for (var i = 0; i < e.length; i++) {',\n ' boxE.appendChild(chip(\"yh-ep\" + (i === curE ? \" on\" : \"\"), e[i].t, \"data-e\", i));',\n ' }',\n ' if (boxI) boxI.textContent = \"共 \" + D.length + \" 条线路 · 当前线路 \" + e.length + \" 集\";',\n '}',\n '',\n 'function hit(node, attr, root) {',\n ' while (node && node !== root) {',\n ' if (node.getAttribute && node.getAttribute(attr) != null) return node;',\n ' node = node.parentNode;',\n ' }',\n ' return null;',\n '}',\n '',\n 'function autoNext() {',\n ' clearWatch();',\n ' if (!queue.length) {',\n ' say(\"所有线路都试过了,暂时没有可用直链\");',\n ' return;',\n ' }',\n ' var li = queue.shift();',\n ' curL = li;',\n ' var ep = D[li].e[curE];',\n ' tabs();',\n ' eps();',\n ' if (!ep) {',\n ' autoNext();',\n ' return;',\n ' }',\n ' if (ep.v) {',\n ' playUrl(ep.v);',\n ' return;',\n ' }',\n ' say(\"正在检测 \" + D[li].n + \"…\");',\n ' get(ep.u, function (h) {',\n ' var u = pick(h);',\n ' if (!u) {',\n ' autoNext();',\n ' return;',\n ' }',\n ' ep.v = u;',\n ' playUrl(u);',\n ' }, function () {',\n ' autoNext();',\n ' });',\n '}',\n '',\n 'function startEp(ei, fromLine) {',\n ' clearWatch();',\n ' curE = ei;',\n ' queue = [];',\n ' var total = D.length;',\n ' for (var k = 0; k < total; k++) {',\n ' var li = (fromLine + k) % total;',\n ' if (D[li] && D[li].e && D[li].e[ei]) queue.push(li);',\n ' }',\n ' autoNext();',\n '}',\n '',\n 'boxL.onclick = function (ev) {',\n ' var t = hit(ev.target, \"data-l\", boxL);',\n ' if (!t) return;',\n ' var li = parseInt(t.getAttribute(\"data-l\"), 10) || 0;',\n ' var ei = (D[li] && D[li].e[curE]) ? curE : 0;',\n ' startEp(ei, li);',\n '};',\n '',\n 'boxE.onclick = function (ev) {',\n ' var t = hit(ev.target, \"data-e\", boxE);',\n ' if (!t) return;',\n ' var ei = parseInt(t.getAttribute(\"data-e\"), 10) || 0;',\n ' startEp(ei, curL);',\n '};',\n '',\n 'if (!D.length) say(\"没有播放数据\");',\n 'else {',\n ' tabs();',\n ' eps();',\n ' startEp(0, 0);',\n '}'\n ].join('\\n');\n\n var out = [];\n out.push('<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">');\n out.push('<style>');\n out.push('html,body{margin:0;padding:0;background:transparent;overflow-x:hidden}');\n out.push('*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}');\n out.push('.yh{padding:10px 12px 30px;font-size:15px;line-height:1.6;color:inherit}');\n out.push('.yh-hd{display:flex;align-items:center;margin:2px 0 10px}');\n out.push('.yh-hd>div{min-width:0;flex:1}');\n out.push('.yh-hd img{width:52px;height:70px;object-fit:cover;border-radius:6px;background:rgba(128,128,128,.18);margin-right:10px;flex:0 0 auto}');\n out.push('.yh-name{font-size:16px;font-weight:600;line-height:1.35;word-break:break-word;overflow-wrap:break-word}');\n out.push('.yh-sub{font-size:12px;opacity:.6;margin-top:3px}');\n out.push('.yh-stage{background:#000;border-radius:8px;overflow:hidden}');\n out.push('.yh-box{position:relative;width:100%;padding-top:56.25%;background:#000}');\n out.push('.yh-box video{position:absolute;left:0;top:0;display:block;width:100%!important;height:100%!important;object-fit:contain;background:#000}');\n out.push('.yh-tip{margin:7px 2px 0;font-size:12px;line-height:1.5;opacity:.7;min-height:17px}');\n out.push('.yh-lines{display:flex;flex-wrap:wrap;margin:10px 0 8px}');\n out.push('.yh-tab{margin:0 8px 8px 0;padding:5px 12px;border-radius:14px;font-size:13px;border:1px solid rgba(128,128,128,.45);background:rgba(128,128,128,.10);color:inherit}');\n out.push('.yh-tab.on{background:#2f7cf6;border-color:#2f7cf6;color:#fff}');\n out.push('.yh-eps{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));grid-gap:8px;max-height:44vh;overflow:auto;-webkit-overflow-scrolling:touch;padding:2px 0 4px}');\n out.push('.yh-ep{padding:8px 4px;font-size:13px;text-align:center;border-radius:6px;border:1px solid rgba(128,128,128,.35);background:rgba(128,128,128,.08);color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}');\n out.push('.yh-ep.on{background:#2f7cf6;border-color:#2f7cf6;color:#fff}');\n out.push('.yh-ep:active{opacity:.65}');\n out.push('.yh-idx{font-size:12px;opacity:.55;margin:8px 2px 0}');\n out.push('.yh-intro{margin-top:14px;font-size:13px;line-height:1.75;opacity:.78;word-break:break-word;overflow-wrap:break-word}');\n out.push('.yh-intro b{display:block;margin-bottom:4px;font-size:13px;opacity:.9}');\n out.push('<\/style>');\n\n out.push('<div class=\"yh\">');\n out.push('<div class=\"yh-hd\">');\n if (poster) out.push('<img src=\"' + esc(poster) + '\" onerror=\"this.remove()\">');\n out.push('<div><div class=\"yh-name\">' + esc(name || '未知标题') + '<\/div>');\n if (state) out.push('<div class=\"yh-sub\">' + esc(state) + '<\/div>');\n out.push('<\/div><\/div>');\n out.push('<div class=\"yh-stage\"><div class=\"yh-box\">');\n out.push('<video id=\"yh-v\" controls playsinline webkit-playsinline x5-playsinline preload=\"none\"'\n + (poster ? ' poster=\"' + esc(poster) + '\"' : '')\n + (firstUrl ? ' src=\"' + esc(firstUrl) + '\"' : '') + '><\/video>');\n out.push('<\/div><\/div>');\n out.push('<div class=\"yh-tip\" id=\"yh-tip\">正在解析播放地址…<\/div>');\n out.push('<div class=\"yh-lines\" id=\"yh-lines\"><\/div>');\n out.push('<div class=\"yh-eps\" id=\"yh-eps\"><\/div>');\n out.push('<div class=\"yh-idx\" id=\"yh-idx\"><\/div>');\n if (intro) out.push('<div class=\"yh-intro\"><b>简介<\/b>' + esc(intro) + '<\/div>');\n out.push('<\/div>');\n out.push('<div id=\"yh-loading-toast\" style=\"position:fixed;left:50%;bottom:58%;transform:translateX(-50%);'\n + 'background:transparent;color:#000;font-size:14px;font-weight:bold;z-index:999999;'\n + 'pointer-events:none;text-shadow:0 1px 4px rgba(0,0,0,.8);'\n + 'opacity:1;transition:opacity .5s ease;white-space:nowrap;\">资源加载中...<\/div>');\n out.push('<script>setTimeout(function(){var t=document.getElementById(\"yh-loading-toast\");'\n + 'if(t){t.style.opacity=\"0\";setTimeout(function(){if(t.parentNode)t.parentNode.removeChild(t);},500);}},3000);<\/'\n + 'script>');\n out.push('<script>var YHDATA=[' + lines + '];' + CL + '<\/' + 'script>');\n return out.join('');\n})()",
"ruleImage": "a.stui-vodlist__thumb@data-original",
"ruleLink": "a.stui-vodlist__thumb@href",
"ruleNextPage": "ul.stui-page a:contains(下一页)@href",
"ruleTitle": "a@text",
"searchUrl": "\/index.php\/vod\/search\/wd\/{{key}}.html",
"showWebLog": false,
"singleUrl": false,
"sortUrl": "日漫::\/index.php\/vod\/show\/id\/20\/page\/1.html\n国漫::\/index.php\/vod\/show\/id\/21\/page\/1.html\n美漫::\/index.php\/vod\/show\/id\/22\/page\/1.html\n电影::\/index.php\/vod\/show\/id\/23\/page\/1.html\n其它::\/index.php\/vod\/show\/id\/24\/page\/1.html\n里番::\/index.php\/vod\/show\/id\/26\/page\/1.html\n搜索::\/index.php\/vod\/search\/wd\/{{source.getVariable()}}.html",
"sourceComment": "樱花动漫 https:\/\/www.yinghua228.com\/ \n搜索间隔不能小于30s。不要频繁搜索",
"sourceGroup": "🎬 视频",
"sourceIcon": "https:\/\/www.yinghuazz.com\/statics\/img\/favicon.ico",
"sourceName": "樱花动漫",
"sourceUrl": "https:\/\/www.yinghuazz.com",
"type": 0
}