Bilibili-Evolved/min/download-live-records.min.js
2020-10-30 17:42:34 +08:00

1 line
920 B
JavaScript

(()=>(o,t)=>{const e=()=>document.URL.replace(location.search,"").match(/https:\/\/live\.bilibili\.com\/record\/(.+)/);return{widget:{content:`\n<button class="gui-settings-flat-button" style="position: relative; z-index: 100;" id="download-live-records">\n<i class="icon-download"></i>\n<span>下载录像</span>\n</button>`,condition:async()=>{const o=e();return Boolean(o)},success:()=>{const o=dq("#download-live-records");o.addEventListener("click",(async()=>{try{o.disabled=true;const t=e()[1];const n=await Ajax.getJson(`https://api.live.bilibili.com/xlive/web-room/v1/record/getLiveRecordUrl?rid=${t}&platform=html5`);if(n.code!==0){logError(new Error(`获取录像链接失败: ${n.message}`));return}const i=n.data.list.map((o=>o.url));Toast.success(i.map((o=>`<a class="download-link" target="_blank" href="${o}">${o}</a>`)).join("\n"),"下载录像")}catch(o){logError(o)}finally{o.disabled=false}}))}}}})();