Flaschenpost.de Bestpreis Sortierer

Sortiert Angeboote auf flaschenpost.de nach Bestpreis pro Liter.

// ==UserScript==
// @name            Flaschenpost.de Bestpreis Sortierer
// @description     Sortiert Angeboote auf flaschenpost.de nach Bestpreis pro Liter.
// @namespace       https://www.flaschenpost.de
// @version         0.16
// @license         MIT
// @match           https://www.flaschenpost.de/*
// @run-at          document-end
// @icon            https://www.google.com/s2/favicons?sz=64&domain=flaschenpost.de
// @require         https://code.jquery.com/jquery-3.6.3.js
// ==/UserScript==


document.onkeydown = function(evt) {
    console.log('key down');

    evt = evt || window.event;
    if (evt.ctrlKey && evt.keyCode == 66) {
        sortBestpreis();
    }
};

function sortBestpreis() {
    console.log('sort');

    $('.product_group, .articles').each(function() {
        const listElements = $(this).find('.product');

        console.log('listElements', listElements);

        $(listElements).sort(function(a, b) {
            function extract_price(e) {
                const priceElements = $(e).find('.price_per_unit_description');
                const prices = $.map(priceElements, function (e) {
                    const htmlText = $(e).text();
                    console.log('htmlText', htmlText);
                    const regExMatch = htmlText.match(/\(([0-9\,]+) €\//);  // match (_,__ €/___...) Unit can be "L" "Liter" "kg"
                    console.log('regExMatch', regExMatch);
                    return Number.parseFloat(regExMatch[1].replace(',', '.'));
                });

                console.log('prices', prices);
                return Math.min(...prices);
            }

            return extract_price(a) - extract_price(b);
        }).appendTo(this);
    });
}
长期地址
遇到问题?请前往 GitHub 提 Issues,或加Q群1031348184

赞助商

Fishcpy

广告

Rainyun

注册一下就行

Rainyun

一年攒够 12 元