Greasy Fork

Greasy Fork is available in English.

PC闲鱼过滤器-屏蔽职业二手商家、骗子、收购

识别并屏蔽PC闲鱼上出现的大量职业二手贩子、商家、骗子、收购,识别出真正的二手卖家,降低筛选成本

当前为 2018-12-13 提交的版本,查看 最新版本

// ==UserScript==
// @name              PC闲鱼过滤器-屏蔽职业二手商家、骗子、收购
// @namespace         http://space.bilibili.com/13127303/2.taobao
// @version           1.0.1
// @description       识别并屏蔽PC闲鱼上出现的大量职业二手贩子、商家、骗子、收购,识别出真正的二手卖家,降低筛选成本
// @author            阿布垃机手册
// @supportURL        http://space.bilibili.com/13127303
// @match             http*://*.2.taobao.com/*
// @require           https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js
// @run-at            document-end
// ==/UserScript==

let $ = jQuery;
let nicks = (window.localStorage.nicks || '').split(';');


function inBlacklist(nick){
	return nicks.includes(nick);
}

function extractNick(url){
	return url.split('?')[1].match(/usernick=([^&]*)/)[1];
}

function hideBlacklist(){
	$('.item-info-wrapper').each((i,e)=>{
		let href = $('a.seller-nick-name',e).attr('href');
		let nickname = extractNick(href);
		
		if(inBlacklist(nickname)){
			$(e).addClass('band');
		}
		
		let keys =  ['求购','回收','收','现货','售价','新品'];
		let title = $('h4.item-title a',e).text()
		let desc = $('div.item-description',e).text();
		if(keys.some(t=> title.includes(t))  || keys.some(t=> desc.includes(t))){
			$(e).addClass('warn');
		}
	})
}

function unique(a){
	return a.filter((value,index,self)=>self.indexOf(value) === index);
}

let checkJquery = setInterval(_=>{
	if($){
		clearInterval(checkJquery);
		
		$(document.body).addClass('jquery-ready');
		
		hideBlacklist();
		let i = 0;
		let check = setInterval(_=>{
			i += 1;
			hideBlacklist();
			if(i > 2){
				clearInterval(check);
			}
			
		},1000);
		
		
		$(document.body).on('click','a.seller-nick-name',(e)=>{
			
			let nick = extractNick($(e.target).attr('href'));
			
			if(e.shiftKey && confirm(`添加 ${nick} 到黑名单?`)){
				e.preventDefault();
				nicks.push(nick);
				window.localStorage.nicks = unique(nicks).join(';');
				hideBlacklist();
			}
		})
		
		
	}
},1000);