Bushiroad Store 小助手

在Bushiroad商店页面显示商品的实际库存数量,并取消隐藏未开售商品的“添加到购物车”按钮

目前为 2025-03-22 提交的版本。查看 最新版本

// ==UserScript==
// @name         Bushiroad Store 小助手
// @namespace    http://tampermonkey.net/
// @version      0.4
// @description  在Bushiroad商店页面显示商品的实际库存数量,并取消隐藏未开售商品的“添加到购物车”按钮
// @author       Sakuraumi
// @match        https://bushiroad-store.com/products/*
// @match        https://bushiroad-store.com/collections/*
// @grant        none
// @license      MIT
// ==/UserScript==

(function() {
    'use strict';

    // 解析JSON数据
    let scriptTags = document.getElementsByTagName('script');
    let jsonData = null;
    // console.log("start searching...");
    // 寻找包含数据的 <script> 标签
    for (let script of scriptTags) {
        // console.log("found a script.");
        if (script.textContent.includes('"inventory_quantity"')) {
            // console.log("found target.");
            // 找到包含数据的 <script> 标签
            let jsonString = script.textContent.trim();
            let startIndex = jsonString.indexOf('{');
            let endIndex = jsonString.lastIndexOf('}') + 1;
            let jsonContent = jsonString.substring(startIndex, endIndex);

            // 解析JSON数据
            try {
                jsonData = JSON.parse(jsonContent);
                // console.log("success parse target.")
                console.log(jsonData);
                break;
            } catch (error) {
                console.error('Error parsing JSON:', error);
            }
        }
    }

    // 提取并显示库存数量
    if (jsonData && jsonData.inventories) {
        // console.log("found inventories key.")
        for (let inventoryId in jsonData.inventories) {
            let inventory = jsonData.inventories[inventoryId];
            let inventoryQuantity = inventory.inventory_quantity;

            console.log(inventoryQuantity);
            let productElement_high = document.querySelector('.product-form__inventory.inventory.inventory--high');
            let productElement_low = document.querySelector('.product-form__inventory.inventory.inventory--low');
            let productElement_none = document.querySelector('.product-form__inventory.inventory');

            if (productElement_high) {
                let p = document.createElement('p');
                p.textContent = `剩余数量: ${inventoryQuantity}`;
                productElement_high.appendChild(p);
            }
            else if (productElement_low) {
                let p = document.createElement('p');
                p.textContent = `剩余数量: ${inventoryQuantity}`;
                productElement_low.appendChild(p);
            }
            else if (productElement_none) {
                let p = document.createElement('p');
                p.textContent = `剩余数量: ${inventoryQuantity}`;
                productElement_none.appendChild(p);
            }
        }
    }

    let element_add_to_cart_button = document.querySelector('.product-form__payment-container');
    if (element_add_to_cart_button) {
        element_add_to_cart_button.removeAttribute('hidden');
    }

})();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址