在Google搜索结果中,在Firefox或Chrome浏览器中,我获得的URL是通过Google而不是直接到达目标站点的。例如,在

http://www.google.com/search?q=foo

第一个结果是

http:/ /www.google.com/url?sa=t&rct=j&q=foo&source=web&cd=1&ved=0CDIQFjAA&url=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FFoobar&ei=gBj9TtDpAcXT8QPI_4GdAQ&usg=AFJC <2 <我不太在乎Google是否跟踪我所单击的内容,而且我也不在乎单击结果时的额外间接访问(尽管两者都是问题)。但是我感到烦恼的是,我无法通过简单地右键单击链接并选择“复制链接地址”来复制粘贴结果(我想获得真实的结果,而不是Google的重定向)。

至少在Firefox和Chrome浏览器中,我希望使用直接URL http://en.wikipedia.org/wiki/Foobar,至少出于复制粘贴的目的。

Google的行为改变了几处次:


当我问这个问题时,在没有Javascript的浏览器中,您直接在结果中找到了URL:http://en.wikipedia.org/wiki/Foobar。间接添加是通过Javascript添加的。
一段时间后,Google更改为在所有浏览器中提供间接结果。

从2012-09-04开始,似乎:


在没有JS的浏览器中,HTML仍包含间接结果。
在具有JS支持的浏览器中(至少在最近的Firefox和Chrome中),HTML在href属性中包含直接结果,但是有一个onmousedown属性可调用rwt函数,该函数会重写链接。当您将鼠标悬停时,您会看到直接链接,但单击或复制粘贴时会得到上面的链接。




评论

没意识到这在Opera中不会发生

@Barfieldmv就像您不在乎其他将其关闭的正当理由一样。

我没有看到任何原因说明Google为什么使用此重定向。 (虽然由于我不是英语母语人士,但我的语气可能有些偏离),我试图添加一个参数以使其保持打开状态。

他们需要做的就是检测哪个鼠标按钮触发了mousedown事件,并且仅在event.button!== 2(右键单击2)时才更改指向重定向的链接。

从google.com上关闭javascript的那一刻起,我的搜索体验得到了极大的改善。没有指针,没有无用的预览,没有悬停在各处的难看按钮。取而代之的是,五年前我们都习惯了快速,干净,极简的界面。 Google确实糟糕的用户体验。

#1 楼


作者注释(2016年7月):以下答案写于2011年,目前仍在Google搜索中使用。我发布了新的扩展程序,它们使用另一种方法来删除间接搜索结果,该扩展程序可在更多Google网站和移动设备上使用。


TL; DR:不要跟踪我Google是用户脚本不要追踪我Google是我所做的扩展,允许您复制常规URL,同时将引荐来源网址隐藏到您要访问的网站。

安装



Chrome Web Store中的“不要跟踪我的Google”(2016年更新)。

用于Firefox的“不要跟踪我的Google”(台式机和Android) )(自2016年起)。

Userscripts.org上的“不要跟踪我的Google”(仅在Google搜索中有效,不再更新)

说明

我写了一种方法,用无法被Google触及的虚假函数替换修改链接的rwt函数。

通过防止Google覆盖rwt函数,链接无法再修改。此方法取决于Object.defineProperty方法(Firefox 4+和Chrome 5+)。后备要求使用Firefox 2+和Chrome 1+。

Firefox 2+

如果您只想删除修改链接的行为,而不在乎显示搜索查询通过引荐来源,可以使用此GreaseMonkey脚本:(使用通配符和Magic TLD的非常严格的@include规则)

// ==UserScript==
// @name           Don't track me Google
// @namespace      Rob W
// @include        http://*.google.tld/*
// @include        https://*.google.tld/*
// @version        1.2
// @grant          none
// ==/UserScript==

"use strict";
if (Object.defineProperty) {
   Object.defineProperty(unsafeWindow,"rwt", {value: function(){return !0;}, writable: false });
} else {
   unsafeWindow.__defineGetter__('rwt',function(){return function(){return !0}});
}


Google Chrome浏览器不支持Magic TLD,因此,您可以获得的最接近的是*://*.google.com/*(重复该规则,将.com替换为其他受支持的Google TLD)。

在Chrome中,脚本必须以<script>标记的形式注入,因为内容脚本是在“孤立的世界”中执行。

Chrome和Firefox 2+-链接到源代码

2012年1月21日,我发布了扩展版本,其中包括隐藏引荐来源网址的方法,因此其他人无法看到您的搜索查询。这样可以大大改善您的隐私。


此问题在Stack Overflow上得到了解释。
其他详细信息可以在源代码中找到,并且不要跟踪我Google的描述,

(自2016年以来的更新:现代浏览器不再需要隐藏此引荐来源网址,因为引荐来源网址政策仅显示了引荐来源网址中的域标头)

评论


TL; DR不要追踪我Google允许您复制常规URL,同时将引荐来源网址隐藏到您正在访问的网站中:)

– Rob W
2012年1月25日13:45

别追踪我google在Chrome上为我工作!

–安德里·德罗兹杜克(Andriy Drozdyuk)
2012年4月3日在3:29



@drozzy我刚刚在Chrome网上应用店中发布了该扩展程序。

– Rob W
2012年11月15日在21:21

此处描述的脚本-如userscripts.org/scripts/issues/121923所示-效果非常好!愿捐款!

–user36660
13年3月19日在12:16

@TomášZato进行救援的网络档案:web.archive.org/web/20140424090201/https://userscripts.org/…

– Rob W
2014年12月7日在20:16

#2 楼

查看此处找到的用于Google搜索的用户脚本是否适合您。我已经使用了一段时间了,而且它对我来说不是经常工作。


编辑:这是Firefox的附加组件:Google搜索链接修复

评论


推特为我工作得很好。不过,Facebook和Google似乎都无法正常工作...使用最新版本的Chrome。

–杰弗里·布雷克(Jeffrey Blake)
2011-12-30 15:01

这将始终禁止重写,这意味着不会从引荐来源网址中删除敏感信息(请参阅例如facebook.com/notes/facebook-engineering/…)。有没有一种方法可以在需要时将原始URL复制到剪贴板,但是在正常跟随链接后仍可以重写它?

– mark4o
2012年1月2日,下午2:54

这项新政策在Chrome浏览器中不再起作用,它采用了禁止非商店扩展程序/脚本的新政策。

–安德里·德罗兹杜克(Andriy Drozdyuk)
2012年11月15日下午4:29

#3 楼

似乎在onmousedown上调用了rwt函数,从而重写了href。如果我们可以改写这种行为,那么就应该设置它。给定的Google SERP:

javascript:function rwt(a,f,g,l,m,h,c,n,i){return a};


编辑:很高兴看到@Rob创建了用户脚本并将其包含在他的回复中,强烈建议使用此代码段! />

评论


顺便说一句,在这种情况下,您可以剔除rwt的所有参数,因为JavaScript不在乎函数的参数是否与参数匹配。

–里德
2011年12月31日下午3:41

好点子。和FWIW,我怀疑javascript:function rwt(){0};即使没有0,也可能会产生类似的结果-也许值得在codereview.stackexchange.com上询问,因为这既未经测试,也有些偏离主题。

–wehal3001
2011-12-31 10:07



#4 楼

我使用Firefox Redirect Remover附加组件。

安装此文件后,右键单击浏览器中的重定向URL,可以选择复制已清除的URL。

#5 楼

对于短网址,您可以仅复制标题下的绿色文本,因为没有相同的协议标题,这是相同的URL。

对于长网址(绿色文本中带有省略号的人),您需要脚本或使用半复杂的变通方法。

脚本是必需的,因为Google只需单击鼠标即可使用自己的脚本修改链接。如果将鼠标悬停在结果链接上,则会在状态栏中注意到它正确显示,但在您与之交互时会更改。

解决方法包括在Chrome中打开开发人员工具或在Firefox中打开FireBug。 ,选择带有元素检查器的链接,然后复制href属性的内容。这需要打开2个窗口,因此这不是在较小的屏幕上最方便的工作流程。

使用View source可以完成此操作,但Google Instant有时会产生奇怪的来源。另外,为了在源代码中找到链接,您必须记住其标题,因为开发人员工具和FireBug中没有可视选择器。

评论


这是一个令人烦恼的曲折解决方法,比在w3m中进行搜索更为复杂。有没有一种方法可以通过用户脚本彻底禁用重定向?

–吉尔斯'所以-不再是邪恶的'
2011-12-30在2:46

我只是尝试了www.userscripts.org上仅有的两个声称可以做到这一点的脚本(最近一个脚本的发布日期为2011年2月)。它们都无法在Chrome或Firefox / Greasemonkey中使用。

– dnbrv
2011-12-30在3:14

#6 楼

没有任何浏览器扩展程序或JavaScript的解决方案

如果您想保留Google的重定向并仅在此处选择性地复制和粘贴一些URL,则还有其他可能性,不需要在浏览器中进行任何更改。不幸的是,尽管该解决方案在Firefox中可以运行,但它们似乎在Chrome和Internet Explorer中不再可用。

使用键盘的解决方案(在Linux和Windows中进行了测试):
导航至所需的搜索结果链接:在Firefox中:


:使用Tab和Shift + Tab在链接之间导航;在Chrome中:
:按Tab将焦点移到页面中,然后向上和向下移动到在搜索结果之间导航。 (如果使用Tab键到达搜索结果,则“复制链接地址”不可用。)

然后按上下文菜单键或Shift + F10并选择“复制链接位置” /“复制链接地址”(热键:英文Firefox中的A,英文Chrome中的E)。

使用鼠标使键盘导航更快:
要在Firefox中使用鼠标更快地导航,请单击白色的在链接之前输入空格或非链接文本,然后按Tab。您也可以使用F7切换到插入导航,并使用光标键或Tab。

仅使用鼠标的解决方案:
在某些浏览器和环境(例如Windows上的Firefox)中,可以按链接外部的鼠标右键,在保持按下状态的同时移动鼠标光标,然后释放链接上的按钮以调用上下文菜单。

说明:
描述的方法避免在链接上单击鼠标并调用onmousedown事件,该事件会导致原始URL的转换。请注意,如果您已经单击了链接,则必须重新加载搜索结果页面(F5)以获取原始URL。

评论


Mac键盘上没有F10。有Mac指令吗?

–samthebrand
2013年9月6日15:37

@SamtheBrand:请不要写某些内容仅在Windows中有效,而在Mac中则无效。它们是唯一的操作系统吗?我很高兴在Linux上使用此解决方案。 ---答案解释了该解决方案的目的是使用键盘打开链接上的上下文菜单。我没有使用Mac的经验,但是据我了解,在没有鼠标的情况下,它们的使用非常有限。作为Mac用户,也许您可​​以更轻松地找到解决方案。似乎在Firefox中可以使用Mac + Space:bugzilla.mozilla.org/show_bug.cgi?id = 81727

– pabouk
2013年9月6日在18:54



@SamtheBrand:也在这里:blogs.uoregon.edu/developments/2010/10/15/…我猜想另一种解决方案将无法工作,因为它可能会模拟鼠标按下:en.wikipedia.org/wiki/Context_menu#Implementation

– pabouk
2013年9月6日18:56



抱歉,您说的不是“仅Windows”。您是否有机会编辑(最佳)答案以在此处包含您在评论中表达的信息?这个问题,您的答案以及此处的其他内容很快就会在Lifehacker上发布。如果我们能及时将您的编辑发送给编辑,那就太好了!

–samthebrand
2013年9月6日19:07在

@SamtheBrand:我将编辑答案,但是能否请您确认Mac ** + ** Space是否可在Mac上的Firefox中运行,并可能尝试其他可能性/在其他浏览器中(我从Wikipedia链接的那个)?顺便问一下哪个Mac键盘缺少F10?我发现许多布局的图片都带有F10,但是无论如何,我几乎可以确定Shift ** + ** F10在Mac上不会显示上下文菜单。

– pabouk
2013年9月7日在7:01

#7 楼

Chrome和Firefox扩展程序:



Chrome扩展程序:



非直接
https:// chrome.google.com/webstore/detail/undirect/dohbiijnjeiejifbgfdhfknogknkglio
→https://github.com/xwipeoutx/undirect



之前:

/>
之后:



Firefox扩展:


Google / Yandex搜索链接修复
https://addons.mozilla.org/zh-CN/firefox/addon/google-search-link-fix

之前:


之后:




#8 楼

使用Safari,您可以轻松创建自己的扩展程序来处理此问题。我使用了“开发”>“显示扩展程序构建器”,并在“注入的扩展程序内容”部分中将“ www.google.com”添加为允许域,然后将以下脚本添加为结束脚本:

if (window.top === window) {
    var els = document.getElementsByClassName("l");
    for (var i in els) {
        els[i].onmousedown = undefined;
    }
}


评论


这听起来像是一种有用的方法,但是自您回答以来,扩展构建器似乎已进行了改进。我无法使它正常工作。

– Michiel de Mare
2012年7月16日在10:41

#9 楼

我也常常为此感到恼火。因此,我的简单解决方案是使用Google网站的移动版本:

http://www.google.com/pda
或http://www.google.com/m(此链接在IE中不起作用。)

这些网站将为您提供直接进入目标网站的URL,而无需进行更多重定向。

请注意,搜索结果来自这些网站与普通网站有所不同(使用google.com)。

评论


不起作用。他们给我同样的重定向

– siamii
2011-12-30 21:53

链接google.com/m在IE8中对我有用,但仍会重定向。 google.com/pda在Firefox 6和IE 8(我测试过的版本)中打开但未提供Chrome 16时提供直接链接

–mvark
2012年1月1日下午5:08

另一个(可能更好)的是http://www.google.com/custom。

– pabouk
13年7月28日在8:40



#10 楼

只需将其粘贴到您的网址栏中,然后按Enter:

javascript:alert(unescape(prompt("URL","").match("url=([^&]*)")[1]))


#11 楼

我也有同样的问题。

这里有一个在线工具,我觉得很有用:

在线工具-将Google链接转换为直接链接,以便于复制和粘贴

只是书签该页面,然后将“可怕的URL”粘贴到表单中以将其转换为普通链接。

评论


可以在urlclean.com上找到类似的Google搜索结果URL清理程序,如mozilla.general论坛上所述从Google Search清理URL

– Mister_Tom
2014-09-10 17:31

#12 楼

对于较短的链接,选择绿色文本即可。对于带有省略号的较长链接,我倾向于打开链接并从地址/超赞/多功能栏中获取URL。

评论


是的,但是单击链接并加载整个网站仅是为了使我们可以复制织补URL,这很慢而且很麻烦。

–杰夫·阿特伍德
2011-12-30 10:34



如果链接的文档是浏览器在另一个应用程序(例如PDF)中打开的文档,则此方法不起作用。

–复杂请参见生物
2012年1月1日12:23

@Complicatedseebio或网站是否立即重定向(例如,您想在互联网档案中搜索它!)

–安德里·德罗兹杜克(Andriy Drozdyuk)
2012年11月15日4:30