我知道这是一个愚蠢的问题,但我希望搜索结果故意不准确。
抱歉,我的英语不太流利,所以我将使用下面的Breaking Bad
电视剧图片作为示例来解释:
使用 (-) 号我可以排除不需要的结果,但不想让其他用户知道这一点
有什么脚本和软件可以帮助我实现这一点吗?
编辑-我更倾向于使用 Fiddler,这里有没有任何 Fiddler 大师可以帮助我,也许我可以(请告诉我这是否违反规则)雇个人。
@krowe - 我认为 Fiddler 方式更适合我,但真的非常感谢你的帮助我。
答案1
这是一份工作坦普尔猴子在 Chrome 中(或油脂猴在 Firefox 中)。 类似下面的代码应该可以做到:
// ==UserScript==
// @name Tamper with Google Results
// @namespace http://superuser.com/users/145045/krowe
// @version 0.1
// @description This just modifies google results to exclude certain things.
// @match http://*.google.com
// @match https://*.google.com
// @copyright 2014+, KRowe
// ==/UserScript==
function GM_main () {
window.onload = function () {
var targ = window.location;
if(targ && targ.href && targ.href.match('https?:\/\/www.google.com/.+#q=.+') && targ.href.search("/+-torrent/+-watch/+-download")==-1) {
targ.href = targ.href +"+-torrent+-watch+-download";
}
};
}
//-- This is a standard-ish utility function:
function addJS_Node(text, s_URL, funcToRun, runOnLoad) {
var D=document, scriptNode = D.createElement('script');
if(runOnLoad) scriptNode.addEventListener("load", runOnLoad, false);
scriptNode.type = "text/javascript";
if(text) scriptNode.textContent = text;
if(s_URL) scriptNode.src = s_URL;
if(funcToRun) scriptNode.textContent = '(' + funcToRun.toString() + ')()';
var targ = D.getElementsByTagName('head')[0] || D.body || D.documentElement;
targ.appendChild(scriptNode);
}
addJS_Node (null, null, GM_main);
此功能仅在 Chrome 中进行了测试。此外,此功能并非在所有地方都有效。例如,如果您从起始页而不是位置栏进行搜索,则此功能将不起作用,因为不会触发页面加载事件。我不确定是否可以修复此问题。
我并没有采取任何措施来隐藏正在发生的事情。我认为,如果您用框架替换页面内容,并且只是将新页面加载到框架中而不是重定向,那么让 URL 显示原始结果将很容易。让搜索框正常工作会有些棘手,但最终也是非常可行的。诀窍是使用 CSS 来隐藏它,然后制作另一个可见的文本框。然后,您只需要添加一些事件处理程序来将真实搜索框与假搜索框同步。用户脚本也可以在 Chrome 中不带扩展程序的情况下使用,但我没有这样做的经验,因为那些脚本不应该是跨浏览器兼容的,而这些是。如果您真的想隐藏它,那可能也是您想要做的事情。否则,扩展程序将始终对任何寻找它的人可见。但是,您可以通过右键单击扩展程序按钮来隐藏它。
答案2
Google 为 Chrome 推出了一个扩展程序,名为个人阻止列表。它不完全允许您请求的内容(基于关键字的阻止),但它允许您阻止某些域出现在搜索结果中。