// ==UserScript== // @name 【v2.4.8】采集接口VIP视频通行证 // @namespace http://tampermonkey.net/ // @version 2.4.8 // @description 视频VIP 影视vip 电影vip解析-----【性能增强版】引入“智能缓冲策略”深度优化播放核心!保留极致交互体验:加载动画、可视化倒计时,操作清晰可预测。纯净内嵌,稳定兼容,内置跳过片头与剧集连播,聚合海量片源,为您打造终极观影享受。 // @author You & Refined // @include *://v.qq.com/x/page/* // @include *://v.qq.com/x/cover/* // @include *://v.qq.com/tv/* // @include *://*.iqiyi.com/v_* // @include *://*.iqiyi.com/a_* // @include *://*.iqiyi.com/w_* // @include *://*.iq.com/play/* // @include *://v.youku.com/v_* // @include *://*.youku.com/v_* // @include *://*.mgtv.com/b/* // @include *://tv.sohu.com/v/* // @include *://film.sohu.com/album/* // @include *://*.bilibili.com/video/* // @include *://*.bilibili.com/bangumi/play/* // @grant GM_addStyle // @grant GM_xmlhttpRequest // @grant GM_setValue // @grant GM_getValue // @run-at document-end // @connect cj.lziapi.com // @connect api.zuidapi.com // @connect subocaiji.com // @connect ikunzy.com // @connect api.guangsuapi.com // @connect www.huyaapi.com // @connect api.apibdzy.com // @connect api.ukuapi.com // @connect cj.ffzyapi.com // @connect bfzyapi.com // @connect api.wujinapi.me // @connect www.hongniuzy2.com // @connect hhzyapi.com // @connect leshizyapi.com // @connect api.xinlangapi.com // @connect suoniapi.com // @connect ikunzyapi.com // @connect jszyapi.com // @connect caiji.kczyapi.com // @connect sdzyapi.com // @connect collect.wolongzyw.com // ==/UserScript== function _0x3967(_0x16335e,_0x2f18d6){const _0x3b46d9=_0x3b46();return _0x3967=function(_0x396723,_0x2dea6f){_0x396723=_0x396723-0x6e;let _0x36750a=_0x3b46d9[_0x396723];return _0x36750a;},_0x3967(_0x16335e,_0x2f18d6);}function _0x3b46(){const _0x616ad3=['trim','length','https://www.hongniuzy2.com/api.php/provide/vod/','#f8d7da','https://collect.wolongzyw.com/api.php/provide/vod/at/json','internal_dplayer','height','mousemove','getAttribute','AUTOPLAY_MATCH_DELAY','API_TIMEOUT','parentElement','.iqp-player','爱坤采集','正在获取剧集列表...','location','.player-container','querySelector','100%','mouseleave','mouseenter','opacity','onclick','即将播放下一集:\x20','div','pause','https://cj.ffzyapi.com/api.php/provide/vod/','请求\x20[','scrollIntoView','250px','5oauAvr','message','playbackRate','revokeObjectURL','ENGINE_FALLBACK_TIMEOUT','.video-title','#player-container','新浪采集','$$$','120px','19930yjFFWU','3947478bBTaJs','暴风采集','.bpx-player-container','innerWidth','https://hhzyapi.com/api.php/provide/vod/','tm-iframe-player-fusion','tm-container-fusion','\x27;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(!m3u8Url)\x20{\x20document.body.innerHTML\x20=\x20\x27错误:\x20未能获取到视频地址。\x27;\x20return;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20try\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20dp\x20=\x20new\x20DPlayer({\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20container:\x20document.getElementById(\x27dplayer\x27),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20autoplay:\x20true,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20video:\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20url:\x20m3u8Url,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type:\x20\x27customHls\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20customType:\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x27customHls\x27:\x20function\x20(video,\x20player)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20hlsConfig\x20=\x20','add','search','left','tm-player-overlay-fusion','正在加载:\x20','width','querySelectorAll','source-list','scrollY','https://bfzyapi.com/api.php/provide/vod/','resize','.tm-collection-btn','.tm-episode-matched','about:blank','tm-collection-btn','assign','warn',']\x20数据失败。','style','#f1f3f5','REPAINT_ATTACK_DELAY_1','backgroundColor','.episode-list-rect__item--current\x20.episode-list-rect__title,\x20.episode-item.current\x20.episode-item-num','\x27\x20},\x20\x27*\x27);\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20const\x20skipControls\x20=\x20document.getElementById(\x27skip-controls\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20skipControls.addEventListener(\x27click\x27,\x20(e)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(e.target.classList.contains(\x27skip-btn\x27))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20skipSeconds\x20=\x20parseInt(e.target.dataset.skip,\x2010);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(!isNaN(skipSeconds))\x20{\x20video.currentTime\x20=\x20skipSeconds;\x20skipControls.style.display\x20=\x20\x27none\x27;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20});\x0a\x20\x20\x20\x20});\x0a\x20\x20\x20\x20','responseText','720624oOCSqb','max','flex','Mozilla/5.0\x20(Windows\x20NT\x2010.0;\x20Win64;\x20x64)\x20AppleWebKit/537.36\x20(KHTML,\x20like\x20Gecko)\x20Chrome/108.0.0.0\x20Safari/537.36',']\x20加载超时,切换备用...','data','text/html','vod_play_url','remove','origin','stringify','body','createElement','innerHeight','#sohuplayer','smooth','textContent','\x0a\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x0a\x20\x20\x20\x20','https://api.xinlangapi.com/xinlangapi.php/provide/vod/','getElementById','#343a40','center','getBoundingClientRect','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20跳过(50s)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20跳过(85s)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20跳过(90s)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20跳过(120s)\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20','createObjectURL','innerHTML','https://cj.lziapi.com/api.php/provide/vod/','\x0a\x20\x20\x20\x20原生播放器核心\x0a\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x0a\x20\x20\x20\x20','请选择采集源','tm-source-selected','mousedown','https://api.apibdzy.com/api.php/provide/vod/','.ep-list-item.on\x20.ep-item-title,\x20.bpx-player-sending-info\x20.bpx-player-video-title','has','preventDefault','https://api.wujinapi.me/api.php/provide/vod/','clientY','AUTOPLAY_NEXT_DELAY','hostname','meta[property=\x22og:title\x22]',';\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20hls\x20=\x20new\x20Hls(hlsConfig);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20hls.loadSource(video.src);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20hls.attachMedia(video);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20hls.on(Hls.Events.ERROR,\x20(event,\x20data)\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if\x20(data.fatal)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20switch\x20(data.type)\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20case\x20Hls.ErrorTypes.NETWORK_ERROR:\x20hls.startLoad();\x20break;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20case\x20Hls.ErrorTypes.MEDIA_ERROR:\x20hls.recoverMediaError();\x20break;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20default:\x20hls.destroy();\x20break;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20},\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20dp.on(\x27ended\x27,\x20()\x20=>\x20{\x20window.parent.postMessage({\x20type:\x20\x27','get','onload','internal_native','display','push','7BztTWx','等待元素\x20\x27','name','极速采集','click','forEach','#player','replace','225xTZwIa','.video-area','startsWith','scrollWidth'];_0x3b46=function(){return _0x616ad3;};return _0x3b46();}(function(_0x253df4,_0x5f0514){const _0x3b9d42=_0x3967,_0x5c8d46=_0x253df4();while(!![]){try{const _0x1e3c6c=-parseInt(_0x3b9d42(0x86))/0x1*(parseInt(_0x3b9d42(0x8f))/0x2)+-parseInt(_0x3b9d42(0x133))/0x3+-parseInt(_0x3b9d42(0x8b))/0x4*(-parseInt(_0x3b9d42(0x107))/0x5)+-parseInt(_0x3b9d42(0x112))/0x6+-parseInt(_0x3b9d42(0xdd))/0x7*(parseInt(_0x3b9d42(0x9c))/0x8)+parseInt(_0x3b9d42(0xe5))/0x9*(-parseInt(_0x3b9d42(0x111))/0xa)+parseInt(_0x3b9d42(0xc4))/0xb;if(_0x1e3c6c===_0x5f0514)break;else _0x5c8d46['push'](_0x5c8d46['shift']());}catch(_0x21e773){_0x5c8d46['push'](_0x5c8d46['shift']());}}}(_0x3b46,0x72ea2),(function(){'use strict';const _0x2981c1=_0x3967;const _0x8bf759={'API_TIMEOUT':0x1388,'ENGINE_FALLBACK_TIMEOUT':0x3a98,'AUTOPLAY_NEXT_DELAY':0x5dc,'PANEL_LEAVE_CLOSE_DELAY':0x5dc,'AUTOPLAY_MATCH_DELAY':0xbb8,'REPAINT_ATTACK_DELAY_1':0x3e8,'REPAINT_ATTACK_DELAY_2':0x9c4,'MSG_TYPE_VIDEO_ENDED':_0x2981c1(0xb1),'STORAGE_KEY_ICON_POSITION':'tm_icon_position'},_0x1241ac={'maxBufferLength':0xb4,'maxMaxBufferLength':0x12c,'startFragPrefetch':!![],'fragLoadingMaxRetry':0x4,'fragLoadingRetryDelay':0x3e8},_0xd3574=[{'name':_0x2981c1(0xe0),'url':'https://jszyapi.com/api.php/provide/vod/'},{'name':_0x2981c1(0x88),'url':_0x2981c1(0x116)},{'name':_0x2981c1(0xc0),'url':_0x2981c1(0xae)},{'name':_0x2981c1(0xc5),'url':'https://api.zuidapi.com/api.php/provide/vod/'},{'name':'速播采集','url':'https://subocaiji.com/api.php/provide/vod/'},{'name':_0x2981c1(0xf6),'url':_0x2981c1(0xb9)},{'name':_0x2981c1(0xbc),'url':_0x2981c1(0x7f)},{'name':_0x2981c1(0xa4),'url':_0x2981c1(0x9a)},{'name':'百度采集','url':_0x2981c1(0xce)},{'name':'U酷采集','url':_0x2981c1(0xba)},{'name':'非凡采集','url':_0x2981c1(0x103)},{'name':_0x2981c1(0x113),'url':_0x2981c1(0x123)},{'name':_0x2981c1(0x92),'url':_0x2981c1(0xd2)},{'name':'红牛采集','url':_0x2981c1(0xeb)},{'name':_0x2981c1(0x10e),'url':_0x2981c1(0xa6)},{'name':_0x2981c1(0x79),'url':_0x2981c1(0xed)}],_0x475e3c=[{'name':'DPlayer\x20(首选)','type':_0x2981c1(0xee)},{'name':'原生播放器\x20(备用)','type':_0x2981c1(0xda)}];let _0x48dc70=[],_0x4f8d29='',_0x52687e=0x0,_0x29b094=null,_0x1f0556=null,_0x498a52,_0x15baeb=null,_0x239fdc=null,_0x3c652a=null,_0x59a253=null,_0x3c5110=null;GM_addStyle('\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-container-fusion\x20{\x20position:\x20fixed;\x20z-index:\x20999999;\x20width:\x2038px;\x20height:\x2038px;\x20text-align:\x20center;\x20cursor:\x20grab;\x20transition:\x20all\x200.3s\x20ease;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-main-btn-fusion\x20{\x20width:\x20100%;\x20height:\x20100%;\x20border:\x20none;\x20border-radius:\x2050%;\x20background:\x20linear-gradient(135deg,\x20#FFD700,\x20#FFA500);\x20color:\x20white;\x20cursor:\x20pointer;\x20box-shadow:\x200\x204px\x208px\x20rgba(0,0,0,0.2);\x20transition:\x20all\x200.3s\x20ease;\x20padding:\x200;\x20display:\x20flex;\x20align-items:\x20center;\x20justify-content:\x20center;\x20overflow:\x20hidden;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-main-btn-fusion:hover\x20{\x20transform:\x20scale(1.1);\x20box-shadow:\x200\x206px\x2012px\x20rgba(0,0,0,0.3);\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-main-btn-fusion::before\x20{\x20content:\x20\x22VIP\x22;\x20font-size:\x2016px;\x20font-weight:\x20bold;\x20color:\x20#fff;\x20text-shadow:\x200\x201px\x202px\x20rgba(0,0,0,0.2);\x20transition:\x20all\x200.2s;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20@keyframes\x20tm-spin\x20{\x20from\x20{\x20transform:\x20rotate(0deg);\x20}\x20to\x20{\x20transform:\x20rotate(360deg);\x20}\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-main-btn-fusion.loading::before\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20content:\x20\x27\x27;\x20box-sizing:\x20border-box;\x20width:\x2020px;\x20height:\x2020px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20border-radius:\x2050%;\x20border:\x203px\x20solid\x20rgba(255,255,255,0.4);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20border-top-color:\x20#fff;\x20animation:\x20tm-spin\x200.8s\x20linear\x20infinite;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20/*\x20修复:默认隐藏面板,避免出现白色横杆\x20*/\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-panel-fusion\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20none;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20position:\x20absolute;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20left:\x2048px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20top:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20min-width:\x20120px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20background:\x20rgba(255,\x20255,\x20255,\x200.95);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20border-radius:\x208px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20padding:\x205px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20max-height:\x2070vh;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20box-shadow:\x200\x206px\x2020px\x20rgba(0,0,0,0.15);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20font-size:\x2012px;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20backdrop-filter:\x20blur(10px);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20border:\x201px\x20solid\x20rgba(255,\x20255,\x20255,\x200.2);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20flex-direction:\x20column;\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-status-bar\x20{\x20padding:\x204px;\x20margin-bottom:\x205px;\x20background:\x20#f1f3f5;\x20border-radius:\x206px;\x20text-align:\x20center;\x20font-weight:\x20500;\x20color:\x20#495057;\x20font-size:\x2011px;\x20min-height:\x2016px;\x20transition:\x20background-color\x200.3s,\x20color\x200.3s;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20.tm-collection-btn\x20{\x20display:\x20block;\x20width:\x20100%;\x20padding:\x204px\x206px;\x20background:\x20#fff;\x20border:\x201px\x20solid\x20#e9ecef;\x20border-radius:\x206px;\x20cursor:\x20pointer;\x20text-align:\x20center;\x20font-weight:\x20500;\x20color:\x20#495057;\x20font-size:\x2011px;\x20transition:\x20all\x200.2s\x20ease;\x20white-space:\x20nowrap;\x20box-sizing:\x20border-box;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20.tm-collection-btn:hover\x20{\x20background:\x20#f8f9fa;\x20transform:\x20translateY(-1px);\x20box-shadow:\x200\x202px\x204px\x20rgba(0,0,0,0.05);\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20.tm-episode-matched,\x20.tm-source-selected\x20{\x20background:\x20linear-gradient(135deg,\x20#28a745,\x20#20c997)\x20!important;\x20color:\x20white\x20!important;\x20border-color:\x20transparent\x20!important;\x20box-shadow:\x200\x202px\x204px\x20rgba(40,\x20167,\x2069,\x200.3)\x20!important;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-content-area\x20{\x20display:\x20grid;\x20grid-template-columns:\x201fr\x201fr;\x20gap:\x204px;\x20flex-grow:\x201;\x20overflow-y:\x20auto;\x20padding-right:\x204px;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-content-area.source-list\x20{\x20grid-template-columns:\x201fr;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-content-area::-webkit-scrollbar\x20{\x20width:\x204px;\x20}\x20#tm-content-area::-webkit-scrollbar-track\x20{\x20background:\x20#f1f1f1;\x20border-radius:\x202px;\x20}\x20#tm-content-area::-webkit-scrollbar-thumb\x20{\x20background:\x20#888;\x20border-radius:\x202px;\x20}\x20#tm-content-area::-webkit-scrollbar-thumb:hover\x20{\x20background:\x20#555;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-player-overlay-fusion\x20{\x20position:\x20absolute;\x20background-color:\x20#000;\x20z-index:\x20999998;\x20display:\x20none;\x20transition:\x20opacity\x200.3s;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-iframe-player-fusion\x20{\x20width:\x20100%;\x20height:\x20100%;\x20border:\x20none;\x20background-color:\x20#000;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-close-btn-fusion\x20{\x20position:\x20fixed;\x20top:\x2015px;\x20right:\x2015px;\x20z-index:\x201000001;\x20width:\x2036px;\x20height:\x2036px;\x20border-radius:\x2050%;\x20background:\x20rgba(220,\x2053,\x2069,\x200.9);\x20color:\x20white;\x20border:\x20none;\x20cursor:\x20pointer;\x20font-size:\x2016px;\x20display:\x20flex;\x20align-items:\x20center;\x20justify-content:\x20center;\x20transition:\x20all\x200.3s\x20ease;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-close-btn-fusion:hover\x20{\x20background:\x20#dc3545;\x20transform:\x20scale(1.1);\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20#tm-player-status\x20{\x20position:\x20fixed;\x20top:\x205%;\x20left:\x2050%;\x20transform:\x20translateX(-50%);\x20background:\x20rgba(0,\x200,\x200,\x200.7);\x20color:\x20white;\x20padding:\x208px\x2016px;\x20border-radius:\x2020px;\x20font-size:\x2014px;\x20z-index:\x201000000;\x20pointer-events:\x20none;\x20backdrop-filter:\x20blur(4px);\x20}\x0a\x20\x20\x20\x20');const _0x2a1117=document['createElement']('div');_0x2a1117['id']=_0x2981c1(0x118);const _0x4a498f=document[_0x2981c1(0x13f)](_0x2981c1(0xb3));_0x4a498f['id']='tm-main-btn-fusion';const _0x5c461d=document['createElement'](_0x2981c1(0x101));_0x5c461d['id']=_0x2981c1(0xb4);const _0x3414f9=document['createElement'](_0x2981c1(0x101));_0x3414f9['id']=_0x2981c1(0x11d),_0x3414f9[_0x2981c1(0xad)]=_0x2981c1(0x7d),document[_0x2981c1(0x13e)]['appendChild'](_0x2a1117),document[_0x2981c1(0x13e)][_0x2981c1(0xb8)](_0x3414f9),_0x2a1117['appendChild'](_0x4a498f),_0x2a1117['appendChild'](_0x5c461d);const _0x24b944=document[_0x2981c1(0xa7)](_0x2981c1(0x117)),_0x2c77cd=document[_0x2981c1(0xa7)]('tm-close-btn-fusion'),_0x3c6f00=document['getElementById'](_0x2981c1(0x83)),_0x3ab633=_0x2981c1(0x7e),_0xb4161d=_0x2981c1(0xab);function _0x5bcbd4(_0x248645){const _0x4a19a0=_0x2981c1,_0x4ca122=_0x248645[_0x4a19a0(0xe4)](/'/g,'\x5c\x27'),_0x14ae11=JSON[_0x4a19a0(0x13d)](_0x1241ac);return _0x4a19a0(0xaf)+_0x3ab633+_0x4a19a0(0xca)+_0xb4161d+_0x4a19a0(0x71)+_0x4ca122+'\x27;\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(!m3u8Url)\x20{\x20document.body.innerHTML\x20=\x20\x27错误:\x20未能获取到视频地址。\x27;\x20return;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20(Hls.isSupported())\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20hlsConfig\x20=\x20'+_0x14ae11+';\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20const\x20hls\x20=\x20new\x20Hls(hlsConfig);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20hls.loadSource(m3u8Url);\x20hls.attachMedia(video);\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20hls.on(Hls.Events.MANIFEST_PARSED,\x20()\x20=>\x20{\x20video.play().catch(e\x20=>\x20console.error(\x27Auto-play\x20failed:\x27,\x20e));\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20hls.on(Hls.Events.ERROR,\x20(event,\x20data)\x20=>\x20{\x20if\x20(data.fatal)\x20{\x20switch\x20(data.type)\x20{\x20case\x20Hls.ErrorTypes.NETWORK_ERROR:\x20hls.startLoad();\x20break;\x20case\x20Hls.ErrorTypes.MEDIA_ERROR:\x20hls.recoverMediaError();\x20break;\x20default:\x20hls.destroy();\x20break;\x20}\x20}\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20else\x20if\x20(video.canPlayType(\x27application/vnd.apple.mpegurl\x27))\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20video.src\x20=\x20m3u8Url;\x20video.addEventListener(\x27loadedmetadata\x27,\x20()\x20=>\x20{\x20video.play().catch(e\x20=>\x20console.error(\x27Auto-play\x20failed:\x27,\x20e));\x20});\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x20else\x20{\x20document.body.innerHTML\x20=\x20\x27错误:\x20浏览器不支持此视频格式。\x27;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20video.addEventListener(\x27ended\x27,\x20()\x20=>\x20{\x20window.parent.postMessage({\x20type:\x20\x27'+_0x8bf759['MSG_TYPE_VIDEO_ENDED']+_0x4a19a0(0x131);}function _0x272a46(_0x1abb0e){const _0x4fd0a2=_0x2981c1,_0x36de77=_0x1abb0e[_0x4fd0a2(0xe4)](/'/g,'\x5c\x27'),_0x11cee6=JSON[_0x4fd0a2(0x13d)](_0x1241ac);return'\x0a\x20\x20\x20\x20DPlayer\x20Core\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0xb4161d+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20