// ==UserScript== // @name 贴吧广告自动删除及黑名单自动封禁 // @description 根据设置的广告关键字和广告图片,扫描帖子并自动删除广告。另外也可以自动删除和封禁黑名单用户 // @include http://tieba.baidu.com/f?* // @connect imgsrc.baidu.com // @connect hiphotos.baidu.com // @version 0.9.5 // @author yechenyin // @namespace https://greasyfork.org/users/3586-yechenyin // @require https://code.jquery.com/jquery-1.11.2.min.js // @grant GM_xmlhttpRequest // @grant GM_setClipboard // @grant GM_setValue // @grant GM_getValue // @downloadURL none // ==/UserScript== default_settings = { 'scan_threads':10, 'scan_interval_seconds':120, 'scan_floors':20, 'below_level':2, 'only_last':false, 'also_delete':true, 'also_blockid':false, 'block_days':10, }; append_settings = { 'block_rules':'/^[a-zA-Z0-9?a-zA-Z0-9?①-⑳]*[??]+[a-zA-Z0-9?a-zA-Z0-9?①-⑳]*$/ @高清网盘看头像 ', 'fixed_ETags': ' 15389725661213149746 17692237048646853765 4461156921076104320 6137503168619420662 ' }; function get(name) { if (typeof GM_getValue !== 'undefined') { //console.log(name + ': ' + GM_getValue(name)); if (typeof GM_getValue(name) === 'undefined') return ''; else return GM_getValue(name); } else { var value = ''; name = 'gm_'+name; //console.log(name + ': ' + localStorage[name]); if (typeof localStorage[name] !== 'undefined' && localStorage[name]) value = JSON.parse(localStorage[name]); return value; } } function set(name, value) { if (typeof GM_setValue !== 'undefined') { GM_setValue(name, value); console.log(name + ' = ' + GM_getValue(name)); } else { name = 'gm_'+name; localStorage[name] = JSON.stringify(value); console.log(name + ' = ' + localStorage[name]); } } if (get('initialization_v1.0')) { for (var prop in append_settings) { if (!get(prop)) set(prop, ''); if (get(prop) && /\S/.test(get(prop)[0])) set(prop, ' ' + get(prop)); var keywords = append_settings[prop].match(/\S+/g); if (keywords) { for (var i = 0; i < keywords.length; i++) { if (get(prop).indexOf(keywords[i]) < 0) { set(prop, ' ' + keywords[i] + get(prop)); } } } } set('initialization_v1.0', true); } if (get('first_initialization')) { for (var prop in default_settings) { if (!get(prop)) set(prop, default_settings[prop]); } show_setting(); set('first_initialization', true); } function show_setting() { var setting = $('