Bsearch(intumu.com)

bilibili搜索加强版,现网页版不支持复合搜索选框!

  1. // ==UserScript==
  2. // @name Bsearch(intumu.com)
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.0.11
  5. // @description bilibili搜索加强版,现网页版不支持复合搜索选框!
  6. // @author yeayee
  7. // @match https://search.bilibili.com/*
  8. // @icon https://static.hdslb.com/mobile/img/512.png
  9. // @grant GM_xmlhttpRequest
  10. // @grant GM_addStyle
  11. // @grant GM_openInTab
  12. // @grant GM_registerMenuCommand
  13. // @grant GM_setValue
  14. // @grant GM_getValue
  15. // @run-at document-end
  16. // @require https://cdn.staticfile.org/jquery/3.4.0/jquery.min.js
  17. // @require https://cdn.staticfile.org/jquery-cookie/1.4.1/jquery.cookie.min.js
  18. // @require https://unpkg.com/axios/dist/axios.min.js
  19. // @connect search.bilibili.com
  20. // @connect api.bilibili.com
  21. // @connect *.bilibili.com
  22.  
  23. // @license MIT
  24.  
  25. // ==/UserScript==
  26. (function () {
  27. 'use strict';
  28. // grant GM_getResourceText
  29. $("head").append($(
  30. '<link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/github-markdown-css/5.2.0/github-markdown.css" media="(prefers-color-scheme: dark)">'
  31. ));
  32.  
  33. // 通过class定位button
  34. const buttons = document.getElementsByClassName('vui_button vui_button--blue vui_button--lg search-button');
  35.  
  36. // 遍历每个button
  37. for (let i = 0; i < buttons.length; i++) {
  38. const button = buttons[i];
  39.  
  40. // 创建新的button元素
  41. const newButton = document.createElement('button');
  42. newButton.setAttribute('id', 'newbutton');
  43. newButton.innerHTML = '按时间+播放量搜索';
  44.  
  45. // 将新的button插入到button后面
  46. button.parentNode.insertBefore(newButton, button.nextSibling);
  47. };
  48.  
  49. const button = document.getElementById('newbutton');
  50.  
  51. if (button) {
  52. button.addEventListener('click', function() {
  53. // 点击事件处理逻辑
  54. console.log('newButton click!');
  55. const inputElements = document.getElementsByClassName('search-input-el'); // 获取所有带有该class的input元素
  56. let values = [];
  57. for (let i = 0; i < inputElements.length; i++) {
  58. values.push(inputElements[i].value); // 将每个input元素的value添加到数组中
  59. }
  60. console.log(values[0]); // 打印数组中的值
  61. var pg =1
  62. var url = 'https://api.bilibili.com/x/web-interface/wbi/search/type?page='+pg+'&keyword='+values[0]+'&search_type=video'
  63. console.log(url)
  64. let alldata = [];
  65.  
  66. // Get current page headers
  67. const headers = Object.fromEntries(new Headers(document.headers));
  68.  
  69. // Define GET request options
  70. const options = {
  71. method: 'GET',
  72. url: url,
  73. headers: headers,
  74. responseType: 'json',
  75. onload: function(response) {
  76. console.log(response.response);
  77. var jsonData = JSON.parse(response.response);
  78. var numPages = jsonData["data"]["numPages"];
  79.  
  80. alldata.push(jsonData["data"]["result"])
  81. }
  82. };
  83. // Send GET request using GM_xmlhttpRequest
  84. GM_xmlhttpRequest(options);
  85. });
  86. } else {
  87. console.log('Button not found!');
  88. }
  89.  
  90.  
  91. })();

QingJ © 2025

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