sexyhub@xj

sexyhub.cc

Terá de instalar uma extensão como Tampermonkey, Greasemonkey ou Violentmonkey para instalar este script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

Terá de instalar uma extensão como Tampermonkey ou Violentmonkey para instalar este script.

Terá de instalar uma extensão como Tampermonkey ou Userscripts para instalar este script.

Terá de instalar uma extensão como Tampermonkey para instalar este script.

Terá de instalar uma extensão de gestão de scripts de utilizador para instalar este script.

(Já tenho um gestor de scripts de utilizador, deixe-me instalá-lo!)

Terá de instalar uma extensão como Stylus para instalar este estilo.

Terá de instalar uma extensão como Stylus para instalar este estilo.

Terá de instalar uma extensão como Stylus para instalar este estilo.

Terá de instalar uma extensão de gestão de estilos de utilizador para instalar este estilo.

Terá de instalar uma extensão de gestão de estilos de utilizador para instalar este estilo.

Terá de instalar uma extensão de gestão de estilos de utilizador para instalar este estilo.

(Já tenho um gestor de estilos de utilizador, deixe-me instalá-lo!)

// ==UserScript==
// @name         sexyhub@xj
// @namespace    http://tampermonkey.net/
// @version      2.2
// @description  sexyhub.cc
// @author       You
// @match        https://sexyhub.cc/*
// @icon         data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
// @grant        none
// @license      MIT
// @require      https://unpkg.com/[email protected]/dist/ajaxhook.min.js

// @require      https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js
// @require      https://cdnjs.cloudflare.com/ajax/libs/hls.js/1.1.5/hls.min.js
// ==/UserScript==



(function() {
    // https://sexyhub.cc/#/banana    https://sexyhub.cc/#/banana/mov/detail?movId=61507  https://sexyhub.cc/#/banana/mov/search
// @require      https://cdn.jsdelivr.net/npm/dplayer/dist/DPlayer.min.js
    var parse = JSON.parse;
    //if (location.href == 'https://sexyhub.cc/#/banana') {
    JSON.parse = function(params) {
        //console.log("Hook JSON.parse ——> ", params);
        //debugger;
        let params1 = parse(params);
        if (params.indexOf('o0o0plpl11.xiangxiangapps.com') != -1) {
            params1.value = 'https://g28le8r6f058.xzjgz.com'
        }
        return params1;
    };

    /*
    var org = window.XMLHttpRequest.prototype.setRequestHeader;
    window.XMLHttpRequest.prototype.setRequestHeader = function (key, value) {
        if (key == 'x-cookie-auth') {
            //debugger;
            //arguments2 = ['cookie', 'xxx_api_auth=6631643966663733303237306265666365373431386432343032316665346630; path=/'];
            //arguments[0] = 'cookie';
            arguments[1] = '3637616135393536323563613632303634656362386131373264343939333035';
        }
        return org.apply(this, arguments);
    };
    */

    function play_video(url, player) {
        if (window.dp) {
            window.dp.pause()
            window.dp.destroy()
            window.dp = null;
        }
        window.dp = new DPlayer({
            element: player,
            autoplay: true,
            theme: '#FADFA3',
            loop: true,
            lang: 'zh',
            screenshot: true,
            hotkey: true,
            preload: 'auto',
            video: {
                url: url,
                //type: 'hls',
                /*
                type: "customHls",
                customType: {
                    customHls: function (video, player) {
                        const hls = new Hls();
                        hls.loadSource(video.src);
                        hls.attachMedia(video);
                    }
                } */

            }
        });
    }
    $(document).ready(function() {
        const { unProxy, originXhr } = ah.proxy({
        onRequest: (config, handler) => {
            if (config.url.indexOf("xiangjiaoVIP") != -1) {
                //console.log('log', config, config.url);
                //debugger;
                let xg_url = config.url;
                let id = xg_url.slice(xg_url.indexOf('=') + 1, xg_url.length);
                config.url = "https://g28le8r6f058.xzjgz.com/vod/reqdown/" + id;
                config.headers['x-cookie-auth'] = "3637616135393536323563613632303634656362386131373264343939333035";
                handler.next(config);
                //console.log('log', config, config.url);
                //debugger;
            } else if (config.url.indexOf("reqplay") != -1) {
                let xg_url = config.url;
                let id = xg_url.slice(xg_url.lastIndexOf('/') + 1, xg_url.length);
                config.url = "https://g28le8r6f058.xzjgz.com/vod/reqdown/" + id;
                config.headers['x-cookie-auth'] = "3637616135393536323563613632303634656362386131373264343939333035";
                handler.next(config);
            } else {
                handler.next(config);
            }
        },

        onResponse: (response, handler) => {
            if (response.config.url.indexOf("reqdown") != -1) {
                let res = parse(response.response);
                //debugger;
                let url2 = res.data.httpurl;
                window.m3 = url2
                //
                console.log('log', url2);
                handler.next(response)
            } else if (response.config.url.indexOf("search") != -1) {
                // location.href == 'https://sexyhub.cc/#/banana/mov/search'
                let res2 = parse(response.response);
                window.vodrows = res2.data.vodrows;
                //debugger;
            } else {
                handler.next(response)
            }
        }
        })


        if (location.href.indexOf("detail") != -1) {
            let element = document.querySelector('div.video-box');
            let element2 = document.createElement('div');
            let element3 = document.createElement('button');

            element3.type = "button"
            element3.id = "demo";
            element3.innerHTML = "click me";
            element2.id = 'dplayer';
            //document.getElementsByTagName('body')[0].appendChild(element3);
            element.after(element3);
            element3.after(element2);
            //element.after(element2);

        /*
        $.get(window.m3, function(data, status){
            console.log('log', data);
            alert('Data: ' + data + "\nStatus: "+ status);
        }
        ) */
            element3.addEventListener('click', function(){
                console.log('log', window.m3);
                play_video(window.m3, element2);
                //play_video('https://ns0df1.hbrhny.com/20240224/hisLoWRH/4000kb/hls/index.m3u8', element2);
                //document.body.removeChild(element);
                console.log(element2);
            }
          )
        }

        if (location.href.indexOf("search") != -1) {

            // ads.parentNode.removeChild(ads)
            let head_element = document.querySelector('div.head');
            let box_element = document.querySelector('div.history-box');
            let data_element = document.createElement('div');
            let button_element = document.createElement('button');
            button_element.innerHTML = 'click on';
            head_element.after(button_element);
            button_element.addEventListener('click', function(){
                let con_html = '';

                for (const [idx, element] of window.vodrows.entries()) {
                    let coverpic = element.coverpic;
                    let title = element.title;
                    let vodid = element.vodid;
                    let duration = element.duration;
                    let info = element.scorenum + ' ' + element.areaname + ' ' + element.catename;
                    con_html += `   <div class="mov-item">
    <div class="mov-cover">
     <img class="lazy_img" data-src="${coverpic}" src="${coverpic}" lazy="loaded" />
     <span class="time">${duration}</span>
    </div>
    <div data-v-2ec7fadf="">
     <div class="title">
     <a href="#/banana/mov/detail?movId=${vodid}">
      ${title}
      </a>
     </div>
     <div class="info">
       ${info}
     </div>
    </div>
   </div>`;
                }


                //console.log('log', con_html);
                data_element.innerHTML = con_html;
                button_element.after(data_element);
                //head_element.parentNode.removeChild(head_element);
            })

        }


    });
})();


/*
1920x1080   12331kb/hls
1280x720    4000kb/hls


*/