Greasy Fork is available in English.

Mediaset Play - Link diretti e download video

Ti permette di guardare e scaricare i video da Mediaset Play

Precedente: v6.7.2 - 06/02/2021 - Italian name and description
Nuova: v7.0 - 15/03/2021 - Updated code due to changed selector URL

  • --- /tmp/diffy20240425-3208087-1f7fwt 2024-04-25 00:36:58.627951179 +0000
  • +++ /tmp/diffy20240425-3208087-998smd 2024-04-25 00:36:58.627951179 +0000
  • @@ -8,7 +8,7 @@
  • // @include http://www.video.mediaset.it/player/*
  • // @include https://*.mediasetplay.mediaset.it/*
  • // @include http://www.mediaset.it/*
  • -// @version 6.7.2
  • +// @version 7.0
  • // @require https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js
  • // @require https://unpkg.com/@ungap/from-entries@0.1.2/min.js
  • // @grant GM_xmlhttpRequest
  • @@ -16,7 +16,6 @@
  • // @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
  • @@ -37,7 +36,7 @@
  • });
  • }
  • -var base_selector = "https://video.lazza.dk/mediaset?id=";
  • +var base_selector = "http://link.theplatform.eu/s/PR1GhC/media/guid/2702976343/[[GUID]]?mbr=true&formats=[[FORMATS]]&format=SMIL";
  • var loc = unsafeWindow.location;
  • var isIframe = loc.href.indexOf("player/") > 0;
  • var isPlay = loc.href.indexOf("mediasetplay.mediaset.it/video/") > 0;
  • @@ -168,24 +167,14 @@
  • return m3u8.concat(results).filter(value => !value.error);
  • };
  • -function displayURLs(responseDetails) {
  • - var container = $('#playerContainer');
  • - if (!isIframe && !container.length) {
  • - return setTimeout(function() {
  • - displayURLs(responseDetails)
  • - }, 1000);
  • - }
  • -
  • - if (isIframe) {
  • - $('<div id="video-links">').appendTo('body');
  • - } else {
  • - container.parent().after('<div id="video-links">');
  • - }
  • -
  • -
  • +function getLinks(responseDetails) {
  • +
  • var r = responseDetails.responseText;
  • - var doc = $.parseXML(r);
  • + r = r.replace(/msf.ticdn.it/g, 'msf.cdn.mediaset.net');
  • + r = r.replace(/netfarmunica/g, 'net/farmunica');
  • + r = r.replace(/<video/g, '<element');
  • + var doc = $.parseHTML(r);
  • var $xml = $( doc );
  • - var videos = $xml.find("video");
  • + var videos = $xml.find("element");
  • var vlinks = [];
  • var appended = {};
  • @@ -213,6 +202,23 @@
  • }
  • });
  • + return vlinks;
  • +}
  • +
  • +function displayURLs(vlinks) {
  • + var container = $('#playerContainer');
  • + if (!isIframe && !container.length) {
  • + return setTimeout(function() {
  • + displayURLs(responseDetails)
  • + }, 1000);
  • + }
  • +
  • + if (isIframe) {
  • + $('<div id="video-links">').appendTo('body');
  • + } else {
  • + container.parent().after('<div id="video-links">');
  • + }
  • +
  • // display video URLs
  • Promise.all(vlinks.map(getInformation)).then(results => {
  • var DRM = false;
  • @@ -302,13 +308,23 @@
  • $("#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 promises = [];
  • + ['MPEG4', 'M3U'].forEach((format) => {
  • + promises.push(
  • + fetch({
  • + method: 'GET',
  • + url: base_selector.replace('[[GUID]]', guid).replace('[[FORMATS]]', format),
  • + headers: {
  • + 'Accept': 'application/atom+xml,application/xml,text/xml'
  • + }
  • + }).then(getLinks)
  • + );
  • + });
  • +
  • + Promise.all(promises).then((sets) => {
  • + var flat = sets.reduce((acc, val) => acc.concat(val), []);
  • + displayURLs(flat);
  • + });
  • }
  • }