从Discogs添加豆瓣条目2

配合从Discogs添加豆瓣条目使用

目前為 2023-02-19 提交的版本,檢視 最新版本

// ==UserScript==
// @name         从Discogs添加豆瓣条目2
// @namespace    http://tampermonkey.net/
// @version      1.0000000004
// @description  配合从Discogs添加豆瓣条目使用
// @author       越洋飞机
// @match        https://music.douban.com/new_subject*
// @icon         https://www.google.com/s2/favicons?domain=douban.com
// @grant        GM_registerMenuCommand
// @license MIT
// ==/UserScript==

(function () {
    'use strict';
    var info = JSON.parse(window.name);
    var re = /\(\d+\)/ //去除括号
    let title = document.querySelector("#p_title");
    if (title) {
        title.value = info.title;
        let submit1 = document.querySelector(" #content > div > div.article > form > fieldset > div.item.other > input");
        submit1.click();
    }
    else {
        if (info.numArtists > 3) {
            while (info.numArtists > 3) {
                info.numArtists -= 1;
                let plusBtn = document.querySelector("#content > div > div.article > form > fieldset > div.item.list.musicians > ul li:last-child a");
                plusBtn.click();
            }
        }
        for (let index = 0; index < info.artists.length; index++) {
            let artistInput = document.querySelector("#content > div > div.article > form > fieldset > div.item.list.musicians > ul li:nth-child(" + (index + 1) + ") input.input_basic");
//            if(re.test(info.artists[index].name)){
//               info.artists[index].name = info.artists[index].name.substring(0,info.artists[index].name.length-3);
//            }
            artistInput.value = info.artists[index].name.replace(re,"");
        }
        let genreInput = document.querySelector("#content > div > div.article > form > fieldset > div:nth-child(4) > div > div > label");
        let typeInput = document.querySelector("#content > div > div.article > form > fieldset > div:nth-child(5) > div > div > label");
        let formatInput = document.querySelector("#content > div > div.article > form > fieldset > div:nth-child(6) > div > div > label");
        let releaseInput = document.querySelector("#p_51");
        let labelInput = document.querySelector("#p_50");
        let tracklistInput = document.querySelector("#content > div > div.article > form > fieldset > div:nth-child(11) > ul > li > div > textarea");
        let infoInput = document.querySelector("#content > div > div.article > form > fieldset > div:nth-child(12) > ul > li > div > textarea");
        let reference = document.querySelector("#content > div > div.article > form > fieldset > div:nth-child(13) > ul > li > div > textarea");
        let genreRoot = document.querySelector("#content > div > div.article > form > fieldset > div:nth-child(4) > div > ul").getElementsByTagName("li");
        let typeRoot = document.querySelector("#content > div > div.article > form > fieldset > div:nth-child(5) > div > ul").getElementsByTagName("li");
        let formatRoot = document.querySelector("#content > div > div.article > form > fieldset > div:nth-child(6) > div > ul").getElementsByTagName("li");
        console.log(genreRoot);
        if (info.genres[0] == "Blues") {
            genreRoot[0].getElementsByTagName("label")[0].click();
        }
        else if (info.genres[0] == "Classical") {
            genreRoot[1].getElementsByTagName("label")[0].click();
        }
        else if (info.genres[0] == "Electronic") {
            genreRoot[3].getElementsByTagName("label")[0].click();
        }
        else if (info.genres[0] == "Folk, World, & Country") {
            genreRoot[4].getElementsByTagName("label")[0].click();
        }
        else if (info.genres[0] == "Funk / Soul") {
            genreRoot[5].getElementsByTagName("label")[0].click();
        }
        else if (info.genres[0] == "Jazz") {
            genreRoot[6].getElementsByTagName("label")[0].click();
        }
        else if (info.genres[0] == "Latin") {
            genreRoot[7].getElementsByTagName("label")[0].click();
        }
        else if (info.genres[0] == "Pop") {
            genreRoot[8].getElementsByTagName("label")[0].click();
        }
        else if (info.genres[0] == "HipHop") {
            genreRoot[9].getElementsByTagName("label")[0].click();
        }
        else if (info.genres[0] == "Reggae") {
            genreRoot[10].getElementsByTagName("label")[0].click();
        }
        else if (info.genres[0] == "Rock") {
            genreRoot[11].getElementsByTagName("label")[0].click();
        }
        else genreInput.innerHTML = "请手动选择"



        //
        if(info.type =="专辑"){
            typeRoot[0].getElementsByTagName("label")[0].click();
        }
        else if(info.type =="选集"){
            typeRoot[1].getElementsByTagName("label")[0].click();
        }
        else if(info.type =="EP"){
            typeRoot[2].getElementsByTagName("label")[0].click();
        }
        else if(info.type =="单曲"){
            typeRoot[3].getElementsByTagName("label")[0].click();
        }
        else typeInput.innerHTML = "请手动选择";

        //
        if (info.format == "File") {
            formatRoot[1].getElementsByTagName("label")[0].click();
        }
        else if (info.format == "Vinyl") {
            formatRoot[3].getElementsByTagName("label")[0].click();
        }
        else if (info.format == "CD"||info.format =="CDr") {
            formatRoot[0].getElementsByTagName("label")[0].click();
        }
        else if (info.format == "Cassette") {
            formatRoot[2].getElementsByTagName("label")[0].click();
        }
        else {
            formatInput.innerHTML = "请手动选择"
        }

        //
        while(info.release.endsWith("-00")){
            info.release = info.release.substring(0,info.release.length-3);
        }
        releaseInput.value = info.release;
        labelInput.value = info.label.replace(re,"");
        tracklistInput.value = info.tracklist;
        infoInput.innerHTML = "Genre: "+JSON.stringify(info.genres).replace(/[\[\]"]/g,'')+"\nStyle: "+JSON.stringify(info.styles).replace(/[\[\]"]/g,'')+(info.note!=='None'?`\nNote: \n${info.note.trim()}`:'')+"\nCountry: "+info.country+"\nLink: "+info.link;
        reference.innerHTML = "Link: "+info.link;
    }

})();

QingJ © 2025

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