arca live 심야식당 자동복호화

심야식당내 base64코드 자동복호화

As of 09.11.2022. See апошняя версія.

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

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

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

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

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

You will need to install a user script manager extension to install this script.

(I already have a user script manager, let me install it!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(I already have a user style manager, let me install it!)

// ==UserScript==
// @name         arca live 심야식당 자동복호화
// @namespace    http://tampermonkey.net/
// @version      0.226
// @description  심야식당내 base64코드 자동복호화
// @author       SYJ
// @match        https://arca.live/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=arca.live
// @grant        none
// @license MIT
// ==/UserScript==

function doDecode() {
    ///'use strict';
    const article = document.querySelector("body div.article-body > div.fr-view.article-content");

    function dec(reg)
    {
        try
        {
            while (reg.test(article.innerHTML))
            {
                let decoded = reg.exec(article.innerHTML)[0];
                while (decoded.match(/aHR0c[0-9A-Za-z]{8,}[=]{0,2}/) == null)
                {
                    decoded = atob(decoded);
                }

                decoded = atob(decoded); console.log(decoded);
                article.innerHTML = article.innerHTML.replace(reg, `<a href=${decoded} target='_blank' rel='noreferrer'>${decoded}</a>`);
            }
        }
        catch(e)
        {
            console.log(e,article);
        }
    }
    dec(/aHR0c[0-9A-Za-z]{20,}[=]{0,2}/); //aHR0c:1회인코딩된것.
    dec(/YUhSMGN[0-9A-Za-z]{80,}[=]{0,2}/); //YUhSMGN:2회인코딩된것.
    dec(/[0-9A-Za-z]{30,}[=]{1,2}/); //문자열 30회 + '=' 1~2회
    dec(/[0-9A-Za-z]{200,}[=]{0,2}/); //문자열 200회 + '=' 0~2회
}
window.addEventListener('load',doDecode);