您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Save Shortlist
// ==UserScript== // @name FMP Save Shortlist // @version 0.2 // @description Save Shortlist // @match https://footballmanagerproject.com/Transfers/TeamBids // @match https://www.footballmanagerproject.com/Transfers/TeamBids // @icon https://www.google.com/s2/favicons?sz=64&domain=footballmanagerproject.com // @grant none // @license MIT // @namespace https://greasyfork.org/users/1304483 // ==/UserScript== const div = document.getElementById("shortList"); const button = document.createElement("button"); button.className = 'btn btn-primary w-200'; button.textContent = "下载关注名单"; button.addEventListener("click", () => saveShortlist()); div.parentNode.insertBefore(button,div); function saveShortlist(){ downloadPlayersData(plList['#shortList']); } function downloadPlayersData(players) { downloadFile(serializePlayersToCSV(players), "text/csv", buildFileName()); } function buildFileName() { const season = document.getElementById('season-num').textContent; const week = document.getElementById('week-num').textContent; return `${season}_${week}_shortList.csv`; } function serializePlayersToCSV(players) { const headers = ['name', 'id', 'nationCode', 'fp', 'rating', 'qi', 'foot', 'years', 'months']; let csvContent = headers.join(',') + '\n'; // 表头行 players.forEach(player => { const row = headers.map(header => { let value = player[header]; if (header == 'rating') value=value/10; if (value === null || value === undefined) value = ''; if (typeof value === 'string' && value.includes(',')) { value = `"${value}"`; // 用引号包裹包含逗号的字符串 } return value; }); csvContent += row.join(',') + '\n'; }); return csvContent; } function downloadFile(data, mimeType, fileName) { const blob = new Blob([data], { type: mimeType }); const link = document.createElement('a'); link.href = URL.createObjectURL(blob); link.download = fileName; document.body.appendChild(link); link.click(); document.body.removeChild(link); }