baidu minus baidu

Use baidu without baidu trash

  1. // ==UserScript==
  2. // @name baidu minus baidu
  3. // @home-url https://greasyfork.org/en/scripts/377105-baidu-minus-baidu
  4. // @namespace https://github.com/XXXDDD/monkey/edit/master/baidu_minus_baidu.js
  5. // @version 0.2
  6. // @description Use baidu without baidu trash
  7. // @author XD
  8. // @include http://www.baidu.com/*
  9. // @include https://www.baidu.com/*
  10. // @grant none
  11. // ==/UserScript==
  12.  
  13. var ignored_url_arr = [
  14. 'jingyan.baidu',
  15. 'tieba.baidu',
  16. 'baijiahao.baidu',
  17. 'baike.baidu',
  18. 'zhidao.baidu',
  19. 'wenku.baidu',
  20. 'b2b.baidu',
  21. 'map.baidu',
  22. 'image.baidu',
  23. 'xueshu.baidu',
  24. 'muzhi.baidu'
  25. ];
  26.  
  27. function checkText(text, arr) {
  28. var flag = false;
  29. arr.forEach(function (value, i) {
  30. if (text && text.indexOf(value) > -1) {
  31. flag = true;
  32. }
  33. })
  34. return flag;
  35. };
  36.  
  37. (function () {
  38. 'use strict';
  39.  
  40. $(document).on('DOMSubtreeModified', process);
  41.  
  42. function process() {
  43.  
  44. var results = document.getElementById('content_left');
  45.  
  46. if (!results) return;
  47.  
  48. for (var i = 0; i < results.children.length; i++) {
  49. // Remove baidu news
  50. //
  51. var mu = results.children[i].attributes.mu;
  52. if (mu && mu.value.indexOf("https://www.baidu.com/s?tn=news") >= 0) {
  53. results.children[i].parentNode.removeChild(results.children[i]);
  54. continue;
  55. }
  56.  
  57. // Remove baidu results with trash sub urls
  58. //
  59. var links = results.children[i].getElementsByClassName('c-showurl');
  60. if (links && links.length > 0) {
  61. var link = links[0],
  62. text = link.innerText,
  63. h = link.href,
  64. flag = false;
  65.  
  66. if (checkText(text, ignored_url_arr) || checkText(h, ignored_url_arr)) {
  67. flag = true;
  68. }
  69.  
  70. if (flag) {
  71. results.children[i].parentNode.removeChild(results.children[i]);
  72. }
  73. }
  74. }
  75.  
  76. }
  77. })();