哔哩哔哩柯南追番

哔哩哔哩 名侦探柯南 追番助手 名侦探柯南主线 柯南追番 数据来源微信小程序柯南追番

目前為 2023-05-08 提交的版本,檢視 最新版本

// ==UserScript==
// @name         哔哩哔哩柯南追番
// @namespace    http://tampermonkey.net/
// @version      0.4
// @description  哔哩哔哩 名侦探柯南 追番助手 名侦探柯南主线 柯南追番 数据来源微信小程序柯南追番
// @author       EFT
// @license      MIT
// @match        *://www.bilibili.com/*
// @grant        none
// ==/UserScript==

(function () {
    const links = [
        "www.bilibili.com/bangumi/media/md28228775",
        "www.bilibili.com/bangumi/media/md28228813"
    ]

    const tags = { 1: 'm', 2: 'm', 3: 'a', 4: 'a', 5: 'm', 6: 'o', 7: 'a', 8: 'a', 9: 'a', 10: 'a', 11: 'a', 12: 'a', 13: 'a', 14: 'm', 15: 'o', 16: 'a', 17: 'a', 18: 'o', 19: 'a', 20: 'o', 21: 'a', 22: 'o', 23: 'a', 24: 'a', 25: 'o', 26: 'o', 27: 'o', 28: 'a', 29: 'a', 30: 'o', 31: 'o', 32: 'a', 33: 'a', 34: 'o', 35: 'a', 36: 'a', 37: 'o', 38: 'o', 39: 'a', 40: 'a', 41: 'a', 42: 'o', 43: 'a', 44: 'm', 45: 'o', 46: 'o', 47: 'a', 48: 'o', 49: 'm', 50: 'm', 51: 'a', 52: 'o', 53: 'm', 54: 'm', 55: 'o', 56: 'm', 57: 'o', 58: 'o', 59: 'm', 60: 'm', 61: 'o', 62: 'a', 63: 'o', 64: 'o', 65: 'a', 66: 'o', 67: 'o', 68: 'o', 69: 'o', 70: 'a', 71: 'a', 72: 'a', 73: 'o', 74: 'a', 75: 'o', 76: 'o', 77: 'a', 78: 'm', 79: 'm', 80: 'a', 81: 'a', 82: 'o', 83: 'o', 84: 'a', 85: 'a', 86: 'o', 87: 'a', 88: 'a', 89: 's', 90: 'o', 91: 'o', 92: 'o', 93: 'o', 94: 'a', 95: 'o', 96: 'o', 97: 'o', 98: 'o', 99: 'a', 100: 'a', 101: 'a', 102: 'a', 103: 'o', 104: 'a', 105: 'a', 106: 'a', 107: 'a', 108: 'a', 109: 'a', 110: 'a', 111: 'a', 112: 'o', 113: 'o', 114: 'o', 115: 'o', 116: 'o', 117: 'o', 118: 'a', 119: 's', 120: 'a', 121: 'a', 122: 'a', 123: 'a', 124: 'm', 125: 'm', 126: 'o', 127: 'o', 128: 'a', 129: 'a', 130: 'o', 131: 'o', 132: 'o', 133: 'o', 134: 'o', 135: 'm', 136: 'm', 137: 'm', 138: 'm', 139: 'm', 140: 'm', 141: 'm', 142: 'a', 143: 'a', 144: 'a', 145: 'o', 146: 'a', 147: 'a', 148: 'a', 149: 'a', 150: 'o', 151: 'a', 152: 'a', 153: 'o', 154: 'a', 155: 'a', 156: 'a', 157: 'a', 158: 'o', 159: 'o', 160: 'o', 161: 'o', 162: 'o', 163: 'a', 164: 'a', 165: 'o', 166: 'a', 167: 'a', 168: 'o', 169: 'o', 170: 'o', 171: 'o', 172: 'a', 173: 'a', 174: 'a', 175: 'a', 176: 'o', 177: 'a', 178: 'a', 179: 'a', 180: 'o', 181: 'm', 182: 'm', 183: 'a', 184: 'a', 185: 'a', 186: 'a', 187: 'a', 188: 'a', 189: 'o', 190: 'm', 191: 'm', 192: 'm', 193: 'o', 194: 'o', 195: 'o', 196: 'o', 197: 'o', 198: 'o', 199: 'o', 200: 'o', 201: 'o', 202: 'o', 203: 'm', 204: 'm', 205: 'm', 206: 'm', 207: 'm', 208: 'm', 209: 'a', 210: 'a', 211: 'o', 212: 'o', 213: 'o', 214: 'a', 215: 'a', 216: 'o', 217: 'o', 218: 'o', 219: 'o', 220: 'a', 221: 'a', 222: 'o', 223: 'o', 224: 'o', 225: 'o', 226: 'o', 227: 'o', 228: 'a', 229: 'a', 230: 'o', 231: 'o', 232: 'o', 233: 'a', 234: 'a', 235: 'm', 236: 'm', 237: 'm', 238: 'm', 239: 'a', 240: 'a', 241: 'm', 242: 'm', 243: 'm', 244: 'o', 245: 'm', 246: 'm', 247: 'a', 248: 'a', 249: 'm', 250: 'm', 251: 'o', 252: 'a', 253: 'a', 254: 'o', 255: 't', 256: 't', 257: 'a', 258: 'a', 259: 'a', 260: 'a', 261: 'm', 262: 'a', 263: 'a', 264: 'o', 265: 'a', 266: 'a', 267: 'o', 268: 'a', 269: 'a', 270: 'o', 271: 'o', 272: 'm', 273: 'm', 274: 't', 275: 't', 276: 'o', 277: 'm', 278: 'm', 279: 'o', 280: 'o', 281: 'o', 282: 'a', 283: 'a', 284: 'a', 285: 'a', 286: 'o', 287: 'o', 288: 'a', 289: 'a', 290: 'a', 291: 'm', 292: 'm', 293: 'm', 294: 'm', 295: 'o', 296: 'm', 297: 'm', 298: 'o', 299: 'm', 300: 'm', 301: 'm', 302: 'm', 303: 'o', 304: 'o', 305: 'o', 306: 'm', 307: 'm', 308: 'm', 309: 'm', 310: 'm', 311: 'm', 312: 'm', 313: 'a', 314: 'a', 315: 'a', 316: 'o', 317: 'o', 318: 'o', 319: 'o', 320: 'o', 321: 'o', 322: 'o', 323: 'a', 324: 'a', 325: 'o', 326: 'a', 327: 'a', 328: 'a', 329: 'a', 330: 'a', 331: 'a', 332: 'm', 333: 'm', 334: 'm', 335: 'm', 336: 'm', 337: 'a', 338: 'a', 339: 'o', 340: 'o', 341: 'a', 342: 'a', 343: 'o', 344: 'o', 345: 'o', 346: 'o', 347: 'o', 348: 'a', 349: 'a', 350: 'a', 351: 'a', 352: 'a', 353: 'o', 354: 'm', 355: 'm', 356: 'a', 357: 'a', 358: 'a', 359: 'a', 360: 'm', 361: 'm', 362: 'o', 363: 'm', 364: 'm', 365: 'm', 366: 'm', 367: 't', 368: 't', 369: 'm', 370: 'm', 371: 'm', 372: 'm', 373: 'm', 374: 'm', 375: 'm', 376: 'm', 377: 'm', 378: 'o', 379: 'o', 380: 'a', 381: 'a', 382: 'o', 383: 'o', 384: 'a', 385: 'a', 386: 'a', 387: 'a', 388: 'o', 389: 'a', 390: 'a', 391: 'o', 392: 'm', 393: 'm', 394: 'o', 395: 'o', 396: 'o', 397: 'a', 398: 'a', 399: 'o', 400: 'o', 401: 'o', 402: 'a', 403: 'a', 404: 'o', 405: 'a', 406: 'm', 407: 'o', 408: 't', 409: 't', 410: 'o', 411: 'o', 412: 'a', 413: 'a', 414: 'a', 415: 'a', 416: 'a', 417: 'a', 418: 'o', 419: 'm', 420: 'a', 421: 'm', 422: 'o', 423: 'o', 424: 'a', 425: 'a', 426: 'o', 427: 'o', 428: 'm', 429: 'a', 430: 'a', 431: 'o', 432: 'a', 433: 'a', 434: 'a', 435: 'a', 436: 'a', 437: 'o', 438: 'o', 439: 'o', 440: 'a', 441: 'a', 442: 'a', 443: 'o', 444: 'o', 445: 'a', 446: 'a', 447: 'o', 448: 'o', 449: 'a', 450: 'a', 451: 'a', 452: 'o', 453: 't', 454: 't', 455: 'a', 456: 'a', 457: 'o', 458: 'o', 459: 'm', 460: 'm', 461: 'm', 462: 'm', 463: 'm', 464: 'o', 465: 'a', 466: 'a', 467: 'm', 468: 'm', 469: 'a', 470: 'a', 471: 'o', 472: 'o', 473: 'a', 474: 'a', 475: 'o', 476: 'a', 477: 'o', 478: 'o', 479: 'o', 480: 'o', 481: 'a', 482: 'a', 483: 'a', 484: 'a', 485: 'a', 486: 'o', 487: 'a', 488: 'a', 489: 'o', 490: 'o', 491: 'o', 492: 'o', 493: 'a', 494: 'a', 495: 'a', 496: 'o', 497: 'a', 498: 'a', 499: 'o', 500: 'a', 501: 'o', 502: 'm', 503: 'm', 504: 'm', 505: 'm', 506: 'a', 507: 'a', 508: 'o', 509: 'a', 510: 'a', 511: 'o', 512: 'm', 513: 'm', 514: 'a', 515: 'o', 516: 'a', 517: 'a', 518: 'o', 519: 'a', 520: 'a', 521: 'a', 522: 'a', 523: 'o', 524: 'a', 525: 'a', 526: 'o', 527: 'm', 528: 'm', 529: 'o', 530: 'a', 531: 'a', 532: 'a', 533: 'a', 534: 'o', 535: 'o', 536: 'a', 537: 'a', 538: 'm', 539: 'm', 540: 'm', 541: 'm', 542: 'm', 543: 'm', 544: 'm', 545: 'm', 546: 'm', 547: 'm', 548: 'm', 549: 'm', 550: 'm', 551: 'm', 552: 'a', 553: 'a', 554: 'a', 555: 'm', 556: 'm', 557: 'm', 558: 'm', 559: 'o', 560: 'a', 561: 'a', 562: 'a', 563: 'a', 564: 'a', 565: 'a', 566: 'a', 567: 't', 568: 't', 569: 'o', 570: 'm', 571: 'm', 572: 'm', 573: 'm', 574: 'm', 575: 'a', 576: 'a', 577: 'a', 578: 'o', 579: 'a', 580: 'a', 581: 'a', 582: 'a', 583: 'a', 584: 'a', 585: 'a', 586: 'a', 587: 'o', 588: 'a', 589: 'a', 590: 'o', 591: 'o', 592: 'o', 593: 'm', 594: 'm', 595: 'o', 596: 'a', 597: 'a', 598: 'o', 599: 'o', 600: 'a', 601: 'a', 602: 'a', 603: 'a', 604: 'o', 605: 't', 606: 't', 607: 'o', 608: 'a', 609: 'a', 610: 'a', 611: 'a', 612: 'a', 613: 'o', 614: 'm', 615: 'm', 616: 'o', 617: 'o', 618: 'o', 619: 'a', 620: 'a', 621: 'o', 622: 'a', 623: 'a', 624: 'a', 625: 'a', 626: 'a', 627: 'a', 628: 'o', 629: 'm', 630: 'm', 631: 'm', 632: 'm', 633: 'o', 634: 'a', 635: 'a', 636: 'a', 637: 'a', 638: 'a', 639: 'o', 640: 'a', 641: 'a', 642: 'o', 643: 'a', 644: 'a', 645: 't', 646: 't', 647: 'o', 648: 'a', 649: 'a', 650: 'o', 651: 'a', 652: 'a', 653: 'o', 654: 'o', 655: 'o', 656: 'o', 657: 'o', 658: 'o', 659: 'a', 660: 'a', 661: 'a', 662: 'a', 663: 'a', 664: 'a', 665: 'a', 666: 'a', 667: 'm', 668: 'm', 669: 'm', 670: 'm', 671: 'm', 672: 'm', 673: 'm', 674: 'm', 675: 'a', 676: 'a', 677: 'a', 678: 'a', 679: 'a', 680: 'o', 681: 'o', 682: 'o', 683: 'a', 684: 'a', 685: 'o', 686: 'o', 687: 'o', 688: 'o', 689: 'o', 690: 'o', 691: 't', 692: 't', 693: 'a', 694: 'a', 695: 'a', 696: 'a', 697: 'm', 698: 'm', 699: 'm', 700: 'm', 701: 'm', 702: 'm', 703: 'm', 704: 'a', 705: 'a', 706: 'a', 707: 'a', 708: 'm', 709: 'm', 710: 'o', 711: 'a', 712: 'a', 713: 'a', 714: 'a', 715: 'o', 716: 'o', 717: 'o', 718: 'o', 719: 'm', 720: 'm', 721: 'o', 722: 'o', 723: 'm', 724: 'm', 725: 'm', 726: 'm', 727: 'm', 728: 'm', 729: 'o', 730: 't', 731: 't', 732: 'o', 733: 'm', 734: 'm', 735: 'm', 736: 'm', 737: 'm', 738: 'o', 739: 'o', 740: 'o', 741: 'o', 742: 'm', 743: 'm', 744: 'o', 745: 'o', 746: 'c', 747: 'o', 748: 'o', 749: 'o', 750: 'o', 751: 'm', 752: 'm', 753: 'm', 754: 'm', 755: 'm', 756: 'm', 757: 'm', 758: 'm', 759: 'o', 760: 'o', 761: 'o', 762: 'a', 763: 'a', 764: 'a', 765: 'a', 766: 'a', 767: 'a', 768: 'o', 769: 'o', 770: 'o', 771: 'o', 772: 't', 773: 't', 774: 'm', 775: 'm', 776: 'm', 777: 'm', 778: 'o', 779: 'm', 780: 'm', 781: 'o', 782: 'o', 783: 'm', 784: 'm', 785: 'o', 786: 'm', 787: 'm', 788: 'c', 789: 'o', 790: 'o', 791: 'a', 792: 'm', 793: 'm', 794: 'm', 795: 'j', 796: 'o', 797: 'm', 798: 'm', 799: 'a', 800: 'a', 801: 'a', 802: 'a', 803: 'o', 804: 'a', 805: 'a', 806: 'o', 807: 'm', 808: 'm', 809: 'm', 810: 'o', 811: 'o', 812: 'm', 813: 'm', 814: 't', 815: 't', 816: 'm', 817: 'a', 818: 'a', 819: 'a', 820: 'o', 821: 'o', 822: 'o', 823: 'm', 824: 'm', 825: 'm', 826: 'm', 827: 'c', 828: 'o', 829: 'o', 830: 'o', 831: 'o', 832: 'm', 833: 'm', 834: 'm', 835: 'm', 836: 'm', 837: 'o', 838: 'm', 839: 'm', 840: 'm', 841: 'm', 842: 'o', 843: 'o', 844: 'o', 845: 'm', 846: 'm', 847: 'o', 848: 'o', 849: 'o', 850: 'o', 851: 'o', 852: 'o', 853: 'o', 854: 't', 855: 't', 856: 'o', 857: 'o', 858: 'o', 859: 'o', 860: 'o', 861: 'o', 862: 'o', 863: 'm', 864: 'm', 865: 'm', 866: 'm', 867: 'm', 868: 'c', 869: 'm', 870: 'm', 871: 'o', 872: 'o', 873: 'o', 874: 'o', 875: 'o', 876: 'o', 877: 'a', 878: 'a', 879: 'o', 880: 'o', 881: 'o', 882: 'm', 883: 'm', 884: 'o', 885: 'a', 886: 'a', 887: 'a', 888: 'o', 889: 'o', 890: 'o', 891: 'm', 892: 'm', 893: 'o', 894: 'o', 895: 'o', 896: 'o', 897: 'o', 898: 'm', 899: 'm', 900: 'o', 901: 'o', 902: 'a', 903: 'a', 904: 'm', 905: 'm', 906: 't', 907: 't', 908: 'm', 909: 'm', 910: 'c', 911: 'o', 912: 'o', 913: 'o', 914: 'o', 915: 'o', 916: 'm', 917: 'm', 918: 'm', 919: 'm', 920: 'o', 921: 'm', 922: 'm', 923: 'o', 924: 'o', 925: 'o', 926: 'o', 927: 'm', 928: 'a', 929: 'a', 930: 'o', 931: 'o', 932: 'o', 933: 'm', 934: 'm', 935: 'o', 936: 'm', 937: 'm', 938: 'o', 939: 'o', 940: 'm', 941: 'm', 942: 'a', 943: 'a', 944: 'm', 945: 'm', 946: 't', 947: 't', 948: 'o', 949: 'm', 950: 'm', 951: 'm', 952: 'm', 953: 'c', 954: 'o', 955: 'o', 956: 'm', 957: 'm', 958: 'o', 959: 'o', 960: 'o', 961: 'o', 962: 'j', 963: 'o', 964: 'm', 965: 'm', 966: 'o', 967: 'o', 968: 'o', 969: 'o', 970: 'o', 971: 'm', 972: 'm', 973: 'o', 974: 'm', 975: 'm', 976: 'o', 977: 'o', 978: 'o', 979: 'o', 980: 'm', 981: 'm', 982: 'm', 983: 'm', 984: 'm', 985: 'm', 986: 'o', 987: 'o', 988: 't', 989: 't', 990: 'o', 991: 'o', 992: 'o', 993: 'c', 994: 'o', 995: 'o', 996: 'o', 997: 'o', 998: 'm', 999: 'm', 1000: 'o', 1001: 'o', 1002: 'o', 1003: 'o', 1004: 'o', 1005: 'o', 1006: 'o', 1007: 'c', 1008: 'o', 1009: 'm', 1010: 'm', 1011: 'm', 1012: 'o', 1013: 'o', 1014: 'o', 1015: 'o', 1016: 'o', 1017: 'o', 1018: 'o', 1019: 'o', 1020: 'o', 1021: 'o', 1022: 'o', 1023: 'o', 1024: 'o', 1025: 'o', 1026: 't', 1027: 't', 1028: 'm', 1029: 'm', 1030: 'm', 1031: 'm', 1032: 'o', 1033: 'o', 1034: 'o', 1035: 'o', 1036: 'o', 1037: 'o', 1038: 'o', 1039: 'o', 1040: 'm', 1041: 'm', 1042: 'o', 1043: 'o', 1044: 'o', 1045: 'o', 1046: 'o', 1047: 'o', 1048: 'o', 1049: 'o', 1050: 'm', 1051: 'm', 1052: 'm', 1053: 'o', 1054: 'o', 1055: 'o', 1056: 'o', 1057: 'a', 1058: 'a', 1059: 'o', 1060: 'm', 1061: 'm', 1062: 'm', 1063: 'o', 1064: 'o', 1065: 'o', 1066: 'o', 1067: 'o', 1068: 'm', 1069: 'm', 1070: 'o', 1071: 'o', 1072: 'o', 1073: 'o', 1074: 'o', 1075: 'm', 1076: 'm', 1077: 'm', 1078: 'o', 1079: 'o', 1080: 'o', 1081: 'm', 1082: 'm', 1083: 'o', 1084: 'o', 1085: 'o', 1086: 'm', 1087: 'o', 1088: 'o', 1089: 'o', 1090: 'm', 1091: 'm', 1092: 'm', 1093: 'o', 1094: 'o', 1095: 'm', 1096: 'o', 1097: 'o', 1098: 'o', 1099: 'm', 1100: 'o', 1101: 'o', 1102: 'm', 1103: 'm', 1104: 'o', 1105: 'o', 1106: 'o', 1107: 'o', 1108: 'o', 1109: 'o', 1110: 'm', 1111: 'm', 1112: 'o', 1113: 'o', 1114: 'o', 1115: 'o', 1116: 'm', 1117: 'm', 1118: 'm', 1119: 'o', 1120: 'o', 1121: 'o', 1122: 'o', 1123: 'o', }

    const dict = {
        a: '漫改',
        o: '原创',
        m: '主线',
        j: 'J联赛',
        c: '联动',
        t: '推理之旅',
        s: '特别篇',
    }

    const colors = {
        a: '#01cd9c',
        o: '#8595ff',
        m: '#e74c3c',
        j: '#574b90',
        c: '#adc600',
        t: '#3dc1d3',
        s: '#fc8bab',
    }

    const pattern = /\d+/

    window.addEventListener('load', onload)

    function onload() {
        console.warn('EFT Say Hello')
        listenModeChangeEvent()
        const i = setInterval(addTag, 499)
        setTimeout(() => clearInterval(i), 2999)
        addTag()
    }

    function addTag() {
        if (!check()) return
        const list = getListItems() || []
        list.forEach(t => {
            if (t.querySelectorAll('span').length >= 1) return
            const ep = extractEpisode(t)
            const span = createSpan(ep)
            if (span) t.insertBefore(span, t.firstChild)
        })
    }

    function createSpan(ep) {
        if (!ep) return
        const tag = tags[ep]
        if (!tag) return
        const label = dict[tag]
        if (!label) return
        const span = document.createElement('span')
        span.innerText = label
        span.style.cssText = `background:${colors[tag] || 'gray'};color:#fff;border-radius:4px;font-size:12px;padding:2px;margin:2px;`
        span.title = label
        return span
    }

    function extractEpisode(item) {
        const res = pattern.exec(item?.title || '')
        return res?.length ? res[0] : undefined
    }

    function getLongList() {
        return $('div').find(t => t.className?.includes('longList_longlist'))
    }

    function getListItems() {
        const longList = getLongList()
        return Array.from(longList?.children || [])
    }

    function check() {
        console.log('check start')
        const a = $('a').find(t => t.className?.startsWith('mediainfo_media_title'))
        const r = a?.title?.includes('名侦探柯南')
        console.log('check end:', r)
        return r
    }

    function onModeChange() {
        console.warn('mode change')
        setTimeout(addTag, 255)
        setTimeout(addTag, 499)
    }

    function getModeChangeBtn() {
        return $('div').find(t => t.className?.includes('modeChangeBtn_wrap'))
    }

    function listenModeChangeEvent() {
        const btn = getModeChangeBtn()
        if (btn) btn.addEventListener('click', onModeChange)
    }

    function $(name) {
        return Array.from(document.querySelectorAll(name))
    }

})();

QingJ © 2025

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