您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
This script is for removing Bing Redirect link, but this doesn't support privacy, as it fetch the redirect result of the URL
当前为
// ==UserScript== // @name Bing Direct Link // @namespace http://github.com/benyaminl // @version 0.14 // @description This script is for removing Bing Redirect link, but this doesn't support privacy, as it fetch the redirect result of the URL // @author Benyamin Limanto // @match https://www.bing.com/search* // @icon https://icons.duckduckgo.com/ip2/bing.com.ico // @grant none // @license MIT // ==/UserScript== (function() { 'use strict'; function replaceTheRestOfURL() { var urls = document.querySelectorAll("a[href*='https://www.bing.com/ck']:not(.b_logoArea)"); for(i=0;i < urls.length; i++) { let url = urls[i]; fetch(url.href) .then(r => r.text()) .then(d => { try { let realUrl = d.match(/https:\/\/.+/i)[0].replace("\";",""); url.href = realUrl; } catch(e) { console.log(e); } }); } } var urlBody = document.querySelectorAll(".tilk"); var i = -1; for(i=0; i < urlBody.length; i++) { let url = urlBody[i]; let stringUrl = url.querySelector("cite"); fetch(url.href) .then(r => r.text()) .then(d => { let realUrl = d.match(/https:\/\/.+/i)[0].replace("\";",""); let h2Url = url.parentNode.parentNode.querySelector("h2 a"); h2Url.href = realUrl; }); } var urlCard = document.querySelectorAll(".rd_sg_ttl"); for(i=0; i < urlCard.length; i++) { let url = urlCard[i]; let cite = urlCard[i].parentNode.querySelector("cite"); fetch(url.querySelector("a").href) .then(r => r.text()) .then(d => { let realUrl = d.match(/https:\/\/.+/i)[0].replace("\";",""); url.querySelector("a").href = realUrl; }); } replaceTheRestOfURL(); // Hook for rest dynamic part of page, using timeout document.querySelector("#b_results").addEventListener("click", function(e) { let target = e.target; console.log("clicked"); let counter = 0; let check = setInterval(function() { replaceTheRestOfURL(); counter++; if (counter > 5) { console.log("stopped"); clearInterval(check); } }, 1000); }); })();