Copy Data to Clipboard for mooc1-api.chaoxing.com

Copy collected data to clipboard for mooc1-api.chaoxing.com

Versão de: 22/06/2024. Veja: a última versão.

Você precisará instalar uma extensão como Tampermonkey, Greasemonkey ou Violentmonkey para instalar este script.

Você precisará instalar uma extensão como Tampermonkey para instalar este script.

Você precisará instalar uma extensão como Tampermonkey ou Violentmonkey para instalar este script.

Você precisará instalar uma extensão como Tampermonkey ou Userscripts para instalar este script.

Você precisará instalar uma extensão como o Tampermonkey para instalar este script.

Você precisará instalar um gerenciador de scripts de usuário para instalar este script.

(Eu já tenho um gerenciador de scripts de usuário, me deixe instalá-lo!)

Você precisará instalar uma extensão como o Stylus para instalar este estilo.

Você precisará instalar uma extensão como o Stylus para instalar este estilo.

Você precisará instalar uma extensão como o Stylus para instalar este estilo.

Você precisará instalar um gerenciador de estilos de usuário para instalar este estilo.

Você precisará instalar um gerenciador de estilos de usuário para instalar este estilo.

Você precisará instalar um gerenciador de estilos de usuário para instalar este estilo.

(Eu já possuo um gerenciador de estilos de usuário, me deixar fazer a instalação!)

// ==UserScript==
// @name         Copy Data to Clipboard for mooc1-api.chaoxing.com
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  Copy collected data to clipboard for mooc1-api.chaoxing.com
// @author       laijiahao
// @match        *://mooc1-api.chaoxing.com/*
// @grant        GM_addStyle
// @grant        GM_setClipboard
// @license MIT
// ==/UserScript==

(function() {
    'use strict';

    // 添加按钮到页面
    const button = document.createElement('button');
    button.innerText = '复制数据到剪贴板';
    button.id = 'copyButton';
    document.body.appendChild(button);

    // 添加按钮样式
    GM_addStyle(`
        #copyButton {
            position: fixed;
            top: 10px;
            right: 10px;
            z-index: 1000;
            padding: 10px;
            background-color: #4CAF50;
            color: white;
            border: none;
            border-radius: 5px;
            cursor: pointer;
        }
        #copyButton:hover {
            background-color: #45a049;
        }
    `);

    // 模拟 obj 对象
    const obj = [
        // 你的数据对象
    ];

    // 按钮点击事件
    button.addEventListener('click', () => {
        let allData = '';
        const obj = document.getElementsByClassName('marBom60');

        for (const doc of obj) {
            const markNameElement = doc.getElementsByClassName('mark_name')[0];
            const colorGreenContent = doc.getElementsByClassName('colorGreen')[0].innerText.match(/[A-Za-z]/g).join('');

            const matches = markNameElement.innerText.match(/\((.*?)\)/g); // 找到所有匹配的括号对
            if (matches) {
                const lastMatch = matches[matches.length - 1]; // 取最后一个匹配项
                const newText = markNameElement.innerText.replace(lastMatch, `(${colorGreenContent})`); // 替换最后一个匹配项
                allData += newText + '\n'; // 收集替换后的文本
            }

            allData += doc.getElementsByClassName('mark_letter')[0].innerText + '\n';
            allData += doc.getElementsByClassName('colorGreen')[0].innerText + '\n';
        }

        // 打印所有数据
        console.log(allData);

        // 将所有数据复制到剪贴板
        GM_setClipboard(allData);
        alert('数据已复制到剪贴板');
    });
})();