您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
This script allows you to watch and download videos on Video Mediaset.
当前为
// ==UserScript== // @name Video.mediaset.it native video player and direct links // @namespace http://andrealazzarotto.com // @description This script allows you to watch and download videos on Video Mediaset. // @include http://www.video.mediaset.it/video/* // @include http://www.video.mediaset.it/player/* // @include https://*.mediasetplay.mediaset.it/* // @include http://www.mediaset.it/* // @version 6.5.4 // @require http://code.jquery.com/jquery-latest.min.js // @grant GM_xmlhttpRequest // @grant GM.xmlHttpRequest // @connect mediaset.it // @connect video.mediaset.it // @connect cdnselector.xuniplay.fdnames.com // @connect video.lazza.dk // @connect execute-api.eu-west-1.amazonaws.com // @connect theplatform.eu // @connect akamaized.net // @license GPL version 3 or any later version; http://www.gnu.org/copyleft/gpl.html // ==/UserScript== /* Greasemonkey 4 wrapper */ if (typeof GM !== "undefined" && !!GM.xmlHttpRequest) { GM_xmlhttpRequest = GM.xmlHttpRequest; } function fetch(params) { return new Promise(function(resolve, reject) { params.onload = resolve; params.onerror = reject; GM_xmlhttpRequest(params); }); } var base_selector = "https://video.lazza.dk/mediaset?id="; var loc = window.location; var isIframe = loc.href.indexOf("player/") > 0; var isPlay = loc.href.indexOf("mediasetplay.mediaset.it/video/") > 0; function boxStyle(selector, color, textcolor) { $(selector).css({ 'padding': '.5em', 'margin': '1em 4em', 'text-align': 'center', 'background-color': color, 'color': textcolor }); $(selector + ' a').css('color', textcolor); $(selector + ' pre').css('white-space', 'pre-wrap'); $(selector + ' *').css('font-size', '15px'); } function writeLive(stream) { $('#stream-url').remove(); console.log("LIVE"); $('<div id="stream-url">').insertAfter($('#playerContainer').parent()); $('#stream-url').append('<p>Flusso della diretta <strong>da aprire con VLC o <code>ffplay</code>:</strong></p>') .append('<pre><code>' + stream + '</code></pre>'); boxStyle('#stream-url', 'rgba(255,255,255,0.5)', 'black'); // kill login timeout unsafeWindow.userNotLogged = function() { return; }; setTimeout(function() { $('.countdown').remove(); }, 1000); } function handleLive(pageURI) { var baseURL = "https://4wfluwho22.execute-api.eu-west-1.amazonaws.com/PROD/play/alive/nownext/v1.0?channelId="; if (pageURI.indexOf('/diretta/') < 0) { return; } fetch({ method: 'GET', url: baseURL + pageURI.split('/diretta/')[1].split('_c')[1], headers: { 'Accept': 'application/json' } }).then(function(responseDetails) { var r = responseDetails.responseText; var data = $.parseJSON(r); var instruction = data.response.tuningInstruction; for (var i = 0; i < 5; i++) { var public = instruction['urn:theplatform:tv:location:any'][i].publicUrls[0]; var streaming = instruction['urn:theplatform:tv:location:any'][i].streamingUrl; if (streaming.indexOf('m3u8') > 0) { return fetch({ method: 'GET', url: public, headers: { 'Accept': 'application/atom+xml,application/xml,text/xml' } }); } } }).then(function(responseDetails) { var src = responseDetails.finalUrl; writeLive(src); }); } function displayURLs(responseDetails) { var r = responseDetails.responseText; var doc = $.parseXML(r); var $xml = $( doc ); var videos = $xml.find("video"); var vlinks = []; var appended = {}; // parse video URLs videos.each(function (i) { var url = $( videos.get(i) ).attr("src"); var type = url.slice(-3); var name = ""; switch(type) { case "est": name = "Smooth streaming"; break; case "3u8": case "pl)": name = "M3U8"; break; case "mpd": name = "skip"; break; case "flv": name = "Video FLV"; break; case "f4v": name = "Video F4V"; break; case "mp4": name = "Video MP4"; break; case "wmv": name = "Video WMV"; break; } var ending = url.slice(-20); if (name != "skip" && !appended[ending]) { vlinks.push( { na: name, url: url } ); appended[ending] = true; } }); // display video URLs var num = vlinks.length; if(isIframe) { $('<div id="video-links">').appendTo('body'); } else { $('#playerContainer').parent().after('<div id="video-links">'); } for(var i = 0; i < num; i++) { var o = vlinks[i]; var s = '<a href="'+o.url+'">'+o.na+'</a>'; $(s).appendTo('#video-links'); if(i != num-1) { $('<span> | </span>').appendTo('#video-links'); } } boxStyle('#video-links', 'rgba(0,0,0,0.5)', 'white'); if (!isIframe) { $("#video-links").after("<div id='video-links-actions'></div>"); $("#video-links-actions") .append('<center style="opacity: 75%; font-size: 75%">' + '<iframe allowtransparency="true" style="width: 94px; height: 20px; position: relative; vertical-align: middle; display: inline-block;" src="https://www.facebook.com/v2.12/plugins/like.php?href=https%3A%2F%2Ffacebook.com%2FAndreaLazzarottoSoftware&layout=button_count&sdk=joey&share=false&show_faces=false" frameborder="0"></iframe>' + ' — <a href="https://lazza.me/RecensioneScript">Recensisci lo script</a>' + ' — <a href="https://lazza.me/DonazioneScript">Fai una donazione</a>' + '</center>') .find('a').css('text-decoration', 'underline'); boxStyle('#video-links-actions', 'rgba(0,0,0,0.35)', 'white'); } if(isIframe) { $('#video-links').css({ 'position': 'absolute', 'bottom': '1.5em', 'left': '5%', 'right': '5%', 'font-size': '.9em', 'z-index': '9999' }) .append("<span id='close'>×</span>"); $("#close").css({ 'font-weight': 'bold', 'position': 'absolute', 'right': '1em', 'cursor': 'pointer' }).click(function() { $("#video-links").fadeOut(); }); boxStyle('#video-links', 'rgba(255,255,255,0.5)', 'black'); } } function get_urls() { var params = new URLSearchParams(location.search.slice(1)); var guid = (loc.href.match(/(FAFU000000([0-9]{4,6})|F[0-9A-F]{14,})/) || [null])[0] || params.get('programGuid') || params.get('id'); if (guid.indexOf('FAFU') == 0) { guid = guid.slice(-6); } $("#video-links, #video-links-actions").remove(); if (guid) { console.log("GUID: " + guid); fetch({ method: 'GET', url: base_selector + guid, headers: { 'Accept': 'application/atom+xml,application/xml,text/xml' } }).then(displayURLs); } } var old_href = ""; var new_href = ""; function handle_everything() { handleLive(loc.href); get_urls(); } $(document).ready(function(){ setInterval(function() { old_href = new_href; new_href = loc.href; if (new_href != old_href) { handle_everything(); } }, 1000); // kill ads unsafeWindow.adsEnabled = false; });
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址