CNKI学位论文学校标记(侧边筛选)

CNKI 搜索结果 学位论文 标记 侧边筛选

// ==UserScript==
// @name         CNKI学位论文学校标记(侧边筛选)
// @namespace    http://tampermonkey.net/
// @version      0.1.2
// @description  CNKI 搜索结果 学位论文 标记 侧边筛选
// @author       You
// @match        https://kns.cnki.net/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=cnki.net
// @grant        none
// @license MIT
// ==/UserScript==


(function() {
    'use strict';

    const universities985 = [
        "清华大学", "北京大学", "厦门大学", "南京大学", "复旦大学",
        "天津大学", "浙江大学", "南开大学", "西安交通大学", "东南大学",
        "武汉大学", "上海交通大学", "山东大学", "湖南大学", "中国人民大学",
        "吉林大学", "重庆大学", "电子科技大学", "四川大学", "中山大学",
        "华南理工大学", "兰州大学", "东北大学", "西北工业大学", "哈尔滨工业大学",
        "华中科技大学", "中国海洋大学", "北京理工大学", "大连理工大学", "北京航空航天大学",
        "北京师范大学", "同济大学", "中南大学", "中国科学技术大学",
        "中国农业大学", "国防科学技术大学", "中央民族大学", "华东师范大学", "西北农林科技大学"
    ];

    const universities211 = [
        // 北京(26所)
        "清华大学", "北京大学", "中国人民大学", "北京工业大学", "北京理工大学",
        "北京航空航天大学", "北京化工大学", "北京邮电大学", "对外经济贸易大学",
        "中国传媒大学", "中央民族大学", "中国矿业大学(北京)", "中央财经大学",
        "中国政法大学", "中国石油大学", "中央音乐学院", "北京体育大学",
        "北京外国语大学", "北京交通大学", "北京科技大学", "北京林业大学",
        "中国农业大学", "北京中医药大学", "华北电力大学", "北京师范大学",
        "中国地质大学",
        // 上海(9所)
        "复旦大学", "华东师范大学", "上海外国语大学", "上海大学", "同济大学",
        "华东理工大学", "东华大学", "上海财经大学", "上海交通大学",
        // 天津(4所)
        "南开大学", "天津大学", "天津医科大学",
        // 重庆(2所)
        "重庆大学", "西南大学",
        // 河北(1所)
        "华北电力大学(保定)",
        // 山西(1所)
        "太原理工大学",
        // 内蒙古(1所)
        "内蒙古大学",
        // 辽宁(4所)
        "大连理工大学", "东北大学", "辽宁大学", "大连海事大学",
        // 吉林(3所)
        "吉林大学", "东北师范大学", "延边大学",
        // 黑龙江(4所)
        "东北农业大学", "东北林业大学", "哈尔滨工业大学", "哈尔滨工程大学",
        // 江苏(11所)
        "南京大学", "东南大学", "苏州大学", "河海大学", "中国药科大学",
        "中国矿业大学(徐州)", "南京师范大学", "南京理工大学", "南京航空航天大学",
        "江南大学", "南京农业大学",
        // 浙江(1所)
        "浙江大学",
        // 安徽(3所)
        "安徽大学", "合肥工业大学", "中国科学技术大学",
        // 福建(2所)
        "厦门大学", "福州大学",
        // 江西(1所)
        "南昌大学",
        // 山东(3所)
        "山东大学", "中国海洋大学", "中国石油大学(华东)",
        // 河南(1所)
        "郑州大学",
        // 湖北(7所)
        "武汉大学", "华中科技大学", "中国地质大学(武汉)", "华中师范大学",
        "华中农业大学", "中南财经政法大学", "武汉理工大学",
        // 湖南(3所)
        "湖南大学", "中南大学", "湖南师范大学",
        // 广东(4所)
        "中山大学", "暨南大学", "华南理工大学", "华南师范大学",
        // 广西(1所)
        "广西大学",
        // 四川(5所)
        "四川大学", "西南交通大学", "电子科技大学", "西南财经大学", "四川农业大学",
        // 云南(1所)
        "云南大学",
        // 贵州(1所)
        "贵州大学",
        // 陕西(7所)
        "西北大学", "西安交通大学", "西北工业大学", "陕西师范大学",
        "西北农林科技大学", "西安电子科技大学", "长安大学",
        // 甘肃(1所)
        "兰州大学",
        // 新疆(2所)
        "新疆大学", "石河子大学",
        // 海南(1所)
        "海南大学",
        // 宁夏(1所)
        "宁夏大学",
        // 青海(1所)
        "青海大学",
        // 西藏(1所)
        "西藏大学",
        // 军事系统(3所)
        "第二军医大学", "第四军医大学", "国防科学技术大学"
    ];

    function markUniversities() {
        // 选择ul元素
        const ulElements = document.querySelectorAll('dd[field="CBWDM"][tit=" 学位授予单位"] div.resultlist ul');

        ulElements.forEach(ul => {
            // 获取ul下所有的li元素
            const liElements = ul.querySelectorAll('li');

            liElements.forEach(li => {
                // 获取li下的a元素内的文本
                const aElement = li.querySelector('a');

                if (aElement) {
                    const universityName = aElement.textContent.trim();
                    if(universities985.includes(universityName)) {
                        // 985标记
                        const span = document.createElement('span');
                        span.textContent = '[985] ';
                        span.style.color = '#e74c3c';
                        span.style.fontWeight = 'bold';
                        aElement.insertBefore(span, aElement.firstChild);
                    } else if(universities211.includes(universityName)) {
                        // 211标记
                        const span = document.createElement('span');
                        span.textContent = '[211] ';
                        span.style.color = '#3498db';
                        span.style.fontWeight = 'bold';
                        aElement.insertBefore(span, aElement.firstChild);
                    }
                }
            });
        });
    }

    // 添加一个定时器,确保在DOM加载完成后执行
    setTimeout(markUniversities, 1000);

    // 监听DOM变化,处理动态加载的内容
    const observer = new MutationObserver(function(mutations) {
        markUniversities();
    });

    observer.observe(document.body, {
        childList: true,
        subtree: true
    });
})();

QingJ © 2025

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