Нужно убрать лишнее из JS скрипта

GLOOMY

Постоялец
Регистрация
24 Авг 2009
Сообщения
93
Реакции
16
Приветсвую всех!

Мне нужно убрать несколько вещей из JS скрипта со стороннего сайта.

1. Random Coin Generator
2. 17 173 coins from CoinGecko
3. Название крипты (оставить только картинки)
4. Отказ от ответственности: Эти инструменты даны в качестве развлекательных и не являются финансовыми рекомендациями.

Сам файл: Для просмотра ссылки Войди или Зарегистрируйся

script.jpg
 
этот виджет дает сайт Для просмотра ссылки Войди или Зарегистрируйся, там он уже в исходном виде в кривом виде, функции не прочитать, пару кусков ИИ раскодил как то, а целиком не смог:
JavaScript:
function updateCoins() {
    const coinElements = document.querySelectorAll(".random-coin");

    coinElements.forEach((coinElement) => {
        const coinId = coinElement.dataset.coinId;
        const apiUrl = `https://api.coingecko.com/api/v3/coins/${coinId}`;

        fetch(apiUrl)
            .then((response) => response.json())
            .then((coinData) => {
                const useSmallImage = Math.random() >= 0.5;
                const price = coinData.market_data?.current_price?.usd || 0;

                // Обновляем DOM
                coinElement.querySelector(".coin-logo").src =
                    useSmallImage ? coinData.image.small : coinData.image.large;
                coinElement.querySelector(".coin-name").textContent = coinData.name;
                coinElement.querySelector(".coin-symbol").textContent =
                    coinData.symbol.toUpperCase();
                coinElement.querySelector(".coin-price").textContent =
                    `$${price.toLocaleString("en-US")}`;
            })
            .catch((error) => {
                console.error("Error fetching coin data:", error);
            });
    });
}

// Запускаем сразу и обновляем каждую минуту
updateCoins();
JavaScript:
function updateCounter() {
    fetch('https://api.countapi.xyz/hit/your-hit-endpoint')
        .then(response => response.json())
        .then(data => {
            const formattedValue = data.value.toLocaleString('en-US');
            document.getElementById('counter').textContent = formattedValue;
        })
        .catch(error => {
            console.error('Error fetching counter data:', error);
            document.getElementById('counter').textContent = '0';
        });
}

// Обновляем счетчик при загрузке страницы
document.addEventListener('DOMContentLoaded', updateCounter);

// Обновляем счетчик каждые 5 секунд (если нужно)
setInterval(updateCounter, 5000);
но целиком и я не смог найти как его раскодить, везде на сайтах либо старье разное, типа онлайн декодеры или программы, но все они в основном eval только могут декодить его.
JavaScript:
(function (e) {
    var t = {};
    function n(r) {
        if (t[r]) return t[r].exports;
        var o = (t[r] = { i: r, l: !1, exports: {} });
        return e[r].call(o.exports, o, o.exports, n), (o.l = !0), o.exports;
    }
    (n.m = e),
        (n.c = t),
        (n.d = function (e, t, r) {
            n.o(e, t) || Object.defineProperty(e, t, { enumerable: !0, get: r });
        }),
        (n.r = function (e) {
            "undefined" !== typeof Symbol &&
                Symbol.toStringTag &&
                Object.defineProperty(e, Symbol.toStringTag, { value: "Module" }),
                Object.defineProperty(e, "__esModule", { value: !0 });
        }),
        (n.t = function (e, t) {
            if ((1 & t && (e = n(e)), 8 & t)) return e;
            if (4 & t && "object" === typeof e && e && e.__esModule) return e;
            var r = Object.create(null);
            if (
                (n.r(r),
                    Object.defineProperty(r, "default", { enumerable: !0, value: e }),
                    2 & t && "string" != typeof e)
            )
                for (var o in e)
                    n.d(
                        r,
                        o,
                        function (t) {
                            return e[t];
                        }.bind(null, o),
                    );
            return r;
        }),
        (n.n = function (e) {
            var t =
                e && e.__esModule
                    ? function () {
                        return e["default"];
                    }
                    : function () {
                        return e;
                    };
            return n.d(t, "a", t), t;
        }),
        (n.o = function (e, t) {
            return Object.prototype.hasOwnProperty.call(e, t);
        }),
        (n.p = "/"),
        n((n.s = 12));
})({
    "014b": function (e, t, n) {
        "use strict";
        var r = n("e53d"),
            o = n("07e3"),
            i = n("8e60"),
            a = n("63b6"),
            c = n("9138"),
            s = n("ebfd").KEY,
            l = n("294c"),
            u = n("dbdb"),
            p = n("45f2"),
            d = n("62a0"),
            _ = n("5168"),
            f = n("ccb9"),
            m = n("6718"),
            h = n("47ee"),
            v = n("9003"),
            y = n("e4ae"),
            g = n("f772"),
            w = n("241e"),
            b = n("36c3"),
            k = n("1bc3"),
            x = n("aebd"),
            C = n("a159"),
            S = n("0395"),
            O = n("bf0b"),
            j = n("9aa9"),
            P = n("d9f6"),
            A = n("c3a1"),
            E = O.f,
            T = P.f,
            M = S.f,
            z = r.Symbol,
            D = r.JSON,
            N = D && D.stringify,
            L = "prototype",
            $ = _("_hidden"),
            I = _("toPrimitive"),
            R = {}.propertyIsEnumerable,
            F = u("symbol-registry"),
            V = u("symbols"),
            U = u("op-symbols"),
            B = Object[L],
            G = "function" == typeof z && !!j.f,
            H = r.QObject,
            K = !H || !H[L] || !H[L].findChild,
            W =
                i &&
                    l(function () {
                        return (
                            7 !=
                            C(
                                T({}, "a", {
                                    get: function () {
                                        return T(this, "a", { value: 7 }).a;
                                    },
                                }),
                            ).a
                        );
                    })
                    ? function (e, t, n) {
                        var r = E(B, t);
                        r && delete B[t], T(e, t, n), r && e !== B && T(B, t, r);
                    }
                    : T,
            J = function (e) {
                var t = (V[e] = C(z[L]));
                return (t._k = e), t;
            },
            q =
                G && "symbol" == typeof z.iterator
                    ? function (e) {
                        return "symbol" == typeof e;
                    }
                    : function (e) {
                        return e instanceof z;
                    },
            Z = function (e, t, n) {
                return (
                    e === B && Z(U, t, n),
                    y(e),
                    (t = k(t, !0)),
                    y(n),
                    o(V, t)
                        ? (n.enumerable
                            ? (o(e, $) && e[$][t] && (e[$][t] = !1),
                                (n = C(n, { enumerable: x(0, !1) })))
                            : (o(e, $) || T(e, $, x(1, {})), (e[$][t] = !0)),
                            W(e, t, n))
                        : T(e, t, n)
                );
            },
            X = function (e, t) {
                y(e);
                var n,
                    r = h((t = b(t))),
                    o = 0,
                    i = r.length;
                while (i > o) Z(e, (n = r[o++]), t[n]);
                return e;
            },
            Y = function (e, t) {
                return void 0 === t ? C(e) : X(C(e), t);
            },
            Q = function (e) {
                var t = R.call(this, (e = k(e, !0)));
                return (
                    !(this === B && o(V, e) && !o(U, e)) &&
                    (!(t || !o(this, e) || !o(V, e) || (o(this, $) && this[$][e])) || t)
                );
            },
            ee = function (e, t) {
                if (((e = b(e)), (t = k(t, !0)), e !== B || !o(V, t) || o(U, t))) {
                    var n = E(e, t);
                    return (
                        !n || !o(V, t) || (o(e, $) && e[$][t]) || (n.enumerable = !0), n
                    );
                }
            },
            te = function (e) {
                var t,
                    n = M(b(e)),
                    r = [],
                    i = 0;
                while (n.length > i)
                    o(V, (t = n[i++])) || t == $ || t == s || r.push(t);
                return r;
            },
            ne = function (e) {
                var t,
                    n = e === B,
                    r = M(n ? U : b(e)),
                    i = [],
                    a = 0;
                while (r.length > a)
                    !o(V, (t = r[a++])) || (n && !o(B, t)) || i.push(V[t]);
                return i;
            };
        G ||
            ((z = function () {
                if (this instanceof z) throw TypeError("Symbol is not a constructor!");
                var e = d(arguments.length > 0 ? arguments[0] : void 0),
                    t = function (n) {
                        this === B && t.call(U, n),
                            o(this, $) && o(this[$], e) && (this[$][e] = !1),
                            W(this, e, x(1, n));
                    };
                return i && K && W(B, e, { configurable: !0, set: t }), J(e);
            }),
                c(z[L], "toString", function () {
                    return this._k;
                }),
                (O.f = ee),
                (P.f = Z),
                (n("6abf").f = S.f = te),
                (n("355d").f = Q),
                (j.f = ne),
                i && !n("b8e3") && c(B, "propertyIsEnumerable", Q, !0),
                (f.f = function (e) {
                    return J(_(e));
                })),
            a(a.G + a.W + a.F * !G, { Symbol: z });
        for (
            var re =
                "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(
                    ",",
                ),
            oe = 0;
            re.length > oe;

        )
            _(re[oe++]);
        for (var ie = A(_.store), ae = 0; ie.length > ae;) m(ie[ae++]);
        a(a.S + a.F * !G, "Symbol", {
            for: function (e) {
                return o(F, (e += "")) ? F[e] : (F[e] = z(e));
            },
            keyFor: function (e) {
                if (!q(e)) throw TypeError(e + " is not a symbol!");
                for (var t in F) if (F[t] === e) return t;
            },
            useSetter: function () {
                K = !0;
            },
            useSimple: function () {
                K = !1;
            },
        }),
            a(a.S + a.F * !G, "Object", {
                create: Y,
                defineProperty: Z,
                defineProperties: X,
                getOwnPropertyDescriptor: ee,
                getOwnPropertyNames: te,
                getOwnPropertySymbols: ne,
            });
        var ce = l(function () {
            j.f(1);
        });
        a(a.S + a.F * ce, "Object", {
            getOwnPropertySymbols: function (e) {
                return j.f(w(e));
            },
        }),
            D &&
            a(
                a.S +
                a.F *
                (!G ||
                    l(function () {
                        var e = z();
                        return (
                            "[null]" != N([e]) ||
                            "{}" != N({ a: e }) ||
                            "{}" != N(Object(e))
                        );
                    })),
                "JSON",
                {
                    stringify: function (e) {
                        var t,
                            n,
                            r = [e],
                            o = 1;
                        while (arguments.length > o) r.push(arguments[o++]);
                        if (((n = t = r[1]), (g(t) || void 0 !== e) && !q(e)))
                            return (
                                v(t) ||
                                (t = function (e, t) {
                                    if (
                                        ("function" == typeof n && (t = n.call(this, e, t)),
                                            !q(t))
                                    )
                                        return t;
                                }),
                                (r[1] = t),
                                N.apply(D, r)
                            );
                    },
                },
            ),
            z[L][I] || n("35e8")(z[L], I, z[L].valueOf),
            p(z, "Symbol"),
            p(Math, "Math", !0),
            p(r.JSON, "JSON", !0);
    },
    "01f9": function (e, t, n) {
        "use strict";
        var r = n("2d00"),
            o = n("5ca1"),
            i = n("2aba"),
            a = n("32e9"),
            c = n("84f2"),
            s = n("41a0"),
            l = n("7f20"),
            u = n("38fd"),
            p = n("2b4c")("iterator"),
            d = !([].keys && "next" in [].keys()),
            _ = "@@iterator",
            f = "keys",
            m = "values",
            h = function () {
                return this;
            };
        e.exports = function (e, t, n, v, y, g, w) {
            s(n, t, v);
            var b,
                k,
                x,
                C = function (e) {
                    if (!d && e in P) return P[e];
                    switch (e) {
                        case f:
                            return function () {
                                return new n(this, e);
                            };
                        case m:
                            return function () {
                                return new n(this, e);
                            };
                    }
                    return function () {
                        return new n(this, e);
                    };
                },
                S = t + " Iterator",
                O = y == m,
                j = !1,
                P = e.prototype,
                A = P[p] || P[_] || (y && P[y]),
                E = A || C(y),
                T = y ? (O ? C("entries") : E) : void 0,
                M = ("Array" == t && P.entries) || A;
            if (
                (M &&
                    ((x = u(M.call(new e()))),
                        x !== Object.prototype &&
                        x.next &&
                        (l(x, S, !0), r || "function" == typeof x[p] || a(x, p, h))),
                    O &&
                    A &&
                    A.name !== m &&
                    ((j = !0),
                        (E = function () {
                            return A.call(this);
                        })),
                    (r && !w) || (!d && !j && P[p]) || a(P, p, E),
                    (c[t] = E),
                    (c[S] = h),
                    y)
            )
                if (((b = { values: O ? E : C(m), keys: g ? E : C(f), entries: T }), w))
                    for (k in b) k in P || i(P, k, b[k]);
                else o(o.P + o.F * (d || j), t, b);
            return b;
        };
    },
    "02f4": function (e, t, n) {
        var r = n("4588"),
            o = n("be13");
        e.exports = function (e) {
            return function (t, n) {
                var i,
                    a,
                    c = String(o(t)),
                    s = r(n),
                    l = c.length;
                return s < 0 || s >= l
                    ? e
                        ? ""
                        : void 0
                    : ((i = c.charCodeAt(s)),
                        i < 55296 ||
                            i > 56319 ||
                            s + 1 === l ||
                            (a = c.charCodeAt(s + 1)) < 56320 ||
                            a > 57343
                            ? e
                                ? c.charAt(s)
                                : i
                            : e
                                ? c.slice(s, s + 2)
                                : a - 56320 + ((i - 55296) << 10) + 65536);
            };
        };
    },
    "0390": function (e, t, n) {
        "use strict";
        var r = n("02f4")(!0);
        e.exports = function (e, t, n) {
            return t + (n ? r(e, t).length : 1);
        };
    },
    "0395": function (e, t, n) {
        var r = n("36c3"),
            o = n("6abf").f,
            i = {}.toString,
            a =
                "object" == typeof window && window && Object.getOwnPropertyNames
                    ? Object.getOwnPropertyNames(window)
                    : [],
            c = function (e) {
                try {
                    return o(e);
                } catch (t) {
                    return a.slice();
                }
            };
        e.exports.f = function (e) {
            return a && "[object Window]" == i.call(e) ? c(e) : o(r(e));
        };
    },
    "0423": function (e) {
        e.exports = JSON.parse(
            '{"coin_details":{"mcap_rank":"時価総額ランク","mcap":"時価総額","24h_volume":"24時間鳥貴族","24h_high_low":"24時間 最高値/最安値"},"coin_compare_chart_widget":{"powered_by":"%{name_start}%{name}%{name_end}による提供","crypto_price_comparison":"仮想通貨価格の比較","crypto_market_cap_comparison":"仮想通貨時価総額の比較"},"coin_price_static_headline_widget":{"powered_by":"%{name_start}%{name}%{name_end}による提供"},"coin_price_chart_widget":{"24h_high":"24H最高値","24h_low":"24H最安値","view_price_chart":"%{coin}の価格チャートを見る","powered_by":"%{name_start}%{name}%{name_end}による提供"},"coin_price_marquee_widget":{"powered_by":"%{name_start}%{name}%{name_end}による提供"},"coin_list_widget":{"powered_by":"%{name_start}%{name}%{name_end}による提供"},"beam_widget":{"powered_by":"%{name_start}%{name}%{name_end}による提供"},"coin_ticker_widget":{"24h_high":"24H最高値","24h_low":"24H最安値","view_price_chart":"%{coin}の価格チャートを見る","powered_by":"%{name_start}%{name}%{name_end}による提供"},"coin_converter_widget":{"view_price_chart":"%{coin}の価格チャートを見る","powered_by":"%{name_start}%{name}%{name_end}による提供"},"coin_heatmap_widget":{"title":"仮想通貨データ一覧","subtitle":"(時価総額上位%{top})","powered_by":"%{name_start}%{name}%{name_end}による提供"},"random_coin_widget":{"disclaimer":"免責事項: このツールはエンターテイメントを目的として提供されており、財務的な助言を成すものではありません。","spin":"スピン","available_coins":"利用可能なコイン"},"coin_daily_price_widget":{"title":"CoinGecko 価格アップデート","total_mcap":"時価総額合計","24h_vol":"24H取引高","dom":"占有率"},"coin_market_ticker_list_widget":{"exchange":"取引所","pair":"通貨ペア","price":"価格","volume":"取引高","trust_score":"トラストスコア","view_price_chart":"価格チャートを見る","powered_by":"%{name_start}%{name}%{name_end}による提供","view_all":"すべての %{coin} マーケットを表示"}}',
        );
    },
    "056c": function (e) {
        e.exports = JSON.parse(
            '{"coin_details":{"mcap_rank":"總市值排名","mcap":"總市值","24h_volume":"24 小時交易量","24h_high_low":"24 小時高價/低價"},"coin_compare_chart_widget":{"powered_by":"由 %{name_start}%{name}%{name_end} 提供","crypto_price_comparison":"加密貨幣匯率比較","crypto_market_cap_comparison":"加密貨幣市值比較"},"coin_price_static_headline_widget":{"powered_by":"由 %{name_start}%{name}%{name_end} 提供"},"coin_price_chart_widget":{"24h_high":"24 小時高價","24h_low":"24 小時低價","view_price_chart":"查看 %{coin} 的匯率圖表","powered_by":"由 %{name_start}%{name}%{name_end} 提供"},"coin_price_marquee_widget":{"powered_by":"由 %{name_start}%{name}%{name_end} 提供"},"coin_list_widget":{"powered_by":"由 %{name_start}%{name}%{name_end} 提供"},"beam_widget":{"powered_by":"由 %{name_start}%{name}%{name_end} 提供"},"coin_ticker_widget":{"24h_high":"24 小時高價","24h_low":"24 小時低價","view_price_chart":"查看 %{coin} 的匯率圖表","powered_by":"由 %{name_start}%{name}%{name_end} 提供"},"coin_converter_widget":{"view_price_chart":"查看 %{coin} 的匯率走勢圖","powered_by":"由 %{name_start}%{name}%{name_end} 提供"},"coin_heatmap_widget":{"title":"加密貨幣樹狀圖","subtitle":"(市值前 %{top} 名)","powered_by":"由 %{name_start}%{name}%{name_end} 提供"},"random_coin_widget":{"disclaimer":"免責聲明:此工具僅供娛樂之用,不構成財務建議。","spin":"Spin","available_coins":"可用貨幣"},"coin_daily_price_widget":{"title":"CoinGecko 匯率更新","total_mcap":"總市值","24h_vol":"24 小時交易量","dom":"市佔率"},"coin_market_ticker_list_widget":{"exchange":"交易平台","pair":"對","price":"價格","volume":"交易量","trust_score":"信任分數","view_price_chart":"查看匯率走勢圖","powered_by":"由 %{name_start}%{name}%{name_end} 提供","view_all":"查看所有 %{coin} 市場"}}',
        );
    },
    "07e3": function (e, t) {
        var n = {}.hasOwnProperty;
        e.exports = function (e, t) {
            return n.call(e, t);
        };
    },
    "0825": function (e) {
        e.exports = JSON.parse(
            '{"coin_details":{"mcap_rank":"Classifica cap. di mercato","mcap":"Cap. di mercato","24h_volume":"Volume in 24 ore","24h_high_low":"Max/min in 24 ore"},"coin_compare_chart_widget":{"powered_by":"Powered by %{name_start}%{name}%{name_end}","crypto_price_comparison":"Confronto prezzi delle cripto","crypto_market_cap_comparison":"Confronto di capitalizzazione di mercato delle cripto"},"coin_price_static_headline_widget":{"powered_by":"Powered by %{name_start}%{name}%{name_end}"},"coin_price_chart_widget":{"24h_high":"Massimo in 24 ore","24h_low":"Minimo in 24 ore","view_price_chart":"Visualizza grafico prezzi %{coin}","powered_by":"Powered by %{name_start}%{name}%{name_end}"},"coin_price_marquee_widget":{"powered_by":"Powered by %{name_start}%{name}%{name_end}"},"coin_list_widget":{"powered_by":"Powered by %{name_start}%{name}%{name_end}"},"beam_widget":{"powered_by":"Powered by %{name_start}%{name}%{name_end}"},"coin_ticker_widget":{"24h_high":"Massimo in 24 ore","24h_low":"Minimo in 24 ore","view_price_chart":"Visualizza grafico prezzi %{coin}","powered_by":"Powered by %{name_start}%{name}%{name_end}"},"coin_converter_widget":{"view_price_chart":"Visualizza grafico prezzi %{coin}","powered_by":"Powered by %{name_start}%{name}%{name_end}"},"coin_heatmap_widget":{"title":"Mappa ad albero delle criptovalute","subtitle":"(Valute top %{top} per capitalizzazione di mercato)","powered_by":"Powered by %{name_start}%{name}%{name_end}"},"random_coin_widget":{"disclaimer":"Disclaimer: Questi strumenti sono a scopo di intrattenimento e non costituiscono una consulenza finanziaria.","spin":"Spin","available_coins":"Valute Disponibili"},"coin_daily_price_widget":{"title":"Aggiornamento prezzi CoinGecko","total_mcap":"Cap. di mercato totale","24h_vol":"Volume in 24 ore","dom":"Dom"},"coin_market_ticker_list_widget":{"exchange":"Exchange","pair":"Coppia","price":"Prezzo","volume":"Volume","trust_score":"Punteggio di fiducia","view_price_chart":"Visualizza grafico prezzi","powered_by":"Powered by %{name_start}%{name}%{name_end}","view_all":"Visualizza tutti i mercati %{coin}"}}',
        );
    },
    "0bfb": function (e, t, n) {
        "use strict";
        var r = n("cb7c");
        e.exports = function () {
            var e = r(this),
                t = "";
            return (
                e.global && (t += "g"),
                e.ignoreCase && (t += "i"),
                e.multiline && (t += "m"),
                e.unicode && (t += "u"),
                e.sticky && (t += "y"),
                t
            );
        };
    },
    "0d58": function (e, t, n) {
        var r = n("ce10"),
            o = n("e11e");
        e.exports =
            Object.keys ||
            function (e) {
                return r(e, o);
            };
    },
    "0f7c": function (e, t, n) {
        "use strict";
        var r = n("688e");
        e.exports = Function.prototype.bind || r;
    },
    "0fc9": function (e, t, n) {
        var r = n("3a38"),
            o = Math.max,
            i = Math.min;
        e.exports = function (e, t) {
            return (e = r(e)), e < 0 ? o(e + t, 0) : i(e, t);
        };
    },
    1153: function (e, t, n) {
        "use strict";
        var r = n("83c2"),
            o = r("%String%"),
            i = r("%TypeError%");
        e.exports = function (e) {
            if ("symbol" === typeof e)
                throw new i("Cannot convert a Symbol value to a string");
            return o(e);
        };
    },
    1173: function (e, t) {
        e.exports = function (e, t, n, r) {
            if (!(e instanceof t) || (void 0 !== r && r in e))
                throw TypeError(n + ": incorrect invocation!");
            return e;
        };
    },

....Полный код не дает форум добавить...
По функциям типа function (e, t, n) вообще не понятно что они делают. Как вариант пробовать в различные ИИ файл подсунуть, может нормально его раскодировать смогут.
 
Назад
Сверху