16 ms·
Prevent Google from mangling search result links when click/copying on Firefox
- senkora 5y agoCould this also solve the problem on Facebook Messenger? It does similar mangling.
- anoncow 5y agoThat would be awesome. It currently filters everything which blocks websites sometimes for no good reason! (My websites are blocked and FB pays no heed to my requests to unblock them).
- HelloMcFly 5y agoI have noticed this, but I have never understood what is happening. Still don't, but nice to see a fix.
- ainar-g 5y agoTracking is happening. It's the goog after all. As for Chromium-based ones, perhaps the goog thinks that it already knows enough about them?
- hraedon 5y agoChromium browsers support and enable by default the "ping" attribute. This helpfully makes link tracking a standard bit of functionality, rather than needing ugly workarounds to accomplish the same thing.
- BunsanSpace 5y agoThere's already an add-on which does this, and more. https://addons.mozilla.org/en-CA/firefox/addon/clearurls/ https://addons.mozilla.org/en-CA/firefox/addon/clearurls/
- armada651 5y agoI actually prefer short userscripts like this over addons, because I can immediately see it's not doing anything nefarious and I only need to trust the addon that I install the user script with.
- 5faulker 5y agoSame here.
- matheusmoreira 5y ago> I only need to trust the addon that I install the user script with I wonder why this is even necessary. User scripting should be a standard feature of browsers. We should have direct access to a complete Javascript environment every time we launch a browser. Just like Emacs gives users a Lisp environment.
- sfink 5y agoYou do, it's just in the devtools menu. The missing piece is triggering javascript based on the loaded page.
- matheusmoreira 5y agoBrowser devtools are amazing and do have a Javascript REPL. Do people use it for scripting though? It's always been more of a debugger than a Javascript environment. People install node.js for local scripting even though it's the same Javascript engine. It's also not available on mobile.
- smallpipe 5y agoIt’s great if you’re on an unfamiliar machine and need a calculator with loops. It’s also great to press all the buttons on a website.
- rasz 5y ago
- Lammy 5y agoI used to use “Google/Yandex Search Link Fix” but it died along with XUL https://github.com/palant/searchlinkfix https://github.com/palant/searchlinkfix
- 5e92cb50239222b 5y agoWorks fine in practice. I've had it installed for years and didn't even know it's not being maintained anymore until I saw your comment.
- CanisDirus 5y agoThere's also "Don't Track Me Google": https://github.com/Rob--W/dont-track-me-google https://github.com/Rob--W/dont-track-me-google which seems to work pretty well, including on Firefox for Android.
- Proven 5y agohttps://microsoftedge.microsoft.com/addons/detail/google-search-link-fix/mjofmhcbolkekhebpccldlbdamnfjefc https://microsoftedge.microsoft.com/addons/detail/google-sea...
- fastssd 5y agoThank you for this. I thought something was wrong when I tried to hover over links, or I was going crazy. This explains a lot.
- cyberpsybin 5y agoGoogle is cancer to the web that has metastasized and become malignant.
- varenc 5y agoGoogle does this so they have click tracking data. But they don't need to mangle URLs in Chrome because it supports the `ping` attribute on <a> tags [0]. The ping attribute basically adds click tracking as a native browser feature so you don't need to do URL redirects. It also makes these analytics much easier for the site and mysterious to the user. Looks like most vendors besides Firefox support it. (They were pretty opposed I recall) If you're a Chrome user, there's some extensions that disable ping requests/link auditing [1]. (EDIT: a commenter noted that uBlock Origin already blocks these! So I recommend that over this obscure extension) [0] https://caniuse.com/ping https://caniuse.com/ping [1] https://chrome.google.com/webstore/detail/ping-blocker/jkpocifanmihboebfhigkjcdihgfcdnb https://chrome.google.com/webstore/detail/ping-blocker/jkpoc...
- hvdijk 5y agoFirefox has a browser.send_pings setting to control this, not sending any pings when it is set to false. This is explicitly a valid browser implementation of the ping attribute: https://html.spec.whatwg.org/multipage/links.html#hyperlink-auditing https://html.spec.whatwg.org/multipage/links.html#hyperlink-... > 2. Optionally, return. (For example, the user agent might wish to ignore any or all ping URLs in accordance with the user's expressed preferences.) The problem isn't that Firefox doesn't support the ping attribute, the problem is that Google fails to respect user requests not to track.
- metalliqaz 5y agoExactly. That's why I solved this problem by using DDG. Although I admit some searches I have to send to Google to get the result I'm looking for.
- zuhsetaqi 5y agoSame for me, but all google searches are done by DDG bangs like 'g!'
- metalliqaz 5y ago
- hagbard_c 5y agoWhile this might solve the problem for the Google search engine it is but a patch to a bigger problem. Instead of applying this patch on each and every device you happen to use it is much more effective to refrain from using these search engines directly by using a meta-search engine like Searx [1]. This not only solves these obnoxious attempts at leaching a bit more data from you, it has an even bigger advantage: it shows search results from multiple engines, ranked in the way those engines present the results to an anonymous user. This often reveals interesting patterns by showing just how those who run these search engines either promote or demote relevant results for a given search. Google clearly prefers to show results from corporate media and established actors (e.g. Wikipedia) above those from non-affiliated sites, DuckDuckGo gives far more 'organic' results. [1] https://searx.me https://searx.me
- TechBro8615 5y agoSearx is very cool. It would be nice if I could configure my browser to rotate through different searx instances rather than configuring one as the default search engine. Btw the list of public nodes is here: https://searx.space/ https://searx.space/ What is the difference between SearXNG [0] ("next generation," i.e. the one you just linked) vs. SearX [1]? NG claims to be a fork, but it's not clear why? The main SearX has recent development activity. [0] https://github.com/searx/searx https://github.com/searx/searx [1] https://github.com/searxng/searxng https://github.com/searxng/searxng
- hagbard_c 5y ago> It would be nice if I could configure my browser to rotate through different searx instances rather than configuring one as the default search engine. That can be achieved using the Privacy Redirect [1] extension, set it to redirect search engine calls and it will use a random engine. The list contains more than just instances of Searx and can by default not be edited by users so you might have to get the source [2] and build a version with only those search engines you want to use. It can redirect many other corporate entities like Youtube, Twitter, Instagram (which does not really seem to work but since I never go there anyway I don´t really know), Reddit, Maps (Google etc) and others. I have it redirect to private instances of Invidious (for Youtube), Nitter (for Twitter) and LibReddit. I do not use search engine redirect since I run a custom Searx instance which doubles as an intranet search engine and as such offers more than any public instance. [1] https://addons.mozilla.org/en-US/firefox/addon/privacy-redirect/ https://addons.mozilla.org/en-US/firefox/addon/privacy-redir... [2] https://github.com/SimonBrazell/privacy-redirect https://github.com/SimonBrazell/privacy-redirect
- hospadar 5y agoTo add a little color and for clarity: Some google links (notably shopping links for products) don't just point at a google-owned redirect (presumably for ad tracking/payment calculation?), they also change the link target on click (?!?evil!?!). There are redirect-removal addons which re-write the original URL correctly, but the on-click handlers mangle the target of the link if the event is not blocked.
- phkahler 5y ago>> There are redirect-removal addons which re-write the original URL correctly, but the on-click handlers mangle the target of the link if the event is not blocked. On-click event handlers should never have been allowed. Hijacking the browser UI is never in the users interest.
- carom 5y agoIt is really worth it to switch to DuckDuckGo. You can throw a g! at the end of your search if you don't like the results DDG gave and it will redirect you to Google. That was the feature that gave me the confidence to switch over, it's painless to get different results, even on a mobile keyboard.
- DavideNL 5y agoOr use startpage.com which has Google search results.
- soraminazuki 5y agoDDG user here, I’m not even sure most people would need g! anymore. I recently came across a Google search results page, and was surprised how unrecognizable it has become. Instead of giving me a page full of search results, it was presenting me with a page full of Google-curated content. At this point, Google is basically unusable for me as a search engine.
- JohnFen 5y agoI think it's been two years since I've used the g!
- mrweasel 5y agoMostly if DDG can't find something, chances are that neither can Google. We've also reached a point where the Google result pages are now ads the first half page. Fair enough that they want/need to make money, but it seems a little excessive.
- beltsazar 5y agoI have no mangling issue—thanks to uBlock annoyances filter: https://github.com/uBlockOrigin/uAssets/blob/02d16a221c276fe58bdd72cc947b26eaf9d1318e/filters/annoyances.txt#L4560-L4561 https://github.com/uBlockOrigin/uAssets/blob/02d16a221c276fe...
- KORraN 5y agoThanks for posting this, this filter indeed fixes the issue. I was recently hit by this, when I was trying to share a link to PDF file. In the end, I worked around it by opening Downloads in Firefox and copying source link from there.
- kvark 5y agoI wonder about the detail at which W3C specifies the behavior of copying a link. Is it outside of the web spec, and thus could be non-portable?
- akkartik 5y agoI find link mangling to be a great test for when a service becomes too powerful relative to its users, able to add friction to its product that serves no purpose for its users[1]. Google started doing this around 2004[2]. Facebook didn't do it until a few years ago. Slack and Discord don't do it. Yet. [1] Example: a search result that's a pdf. How do I share this link? If I click on it it downloads to my disk. If I rightclick on it I can copy a crappy URL. [2] http://akkartik.name/firefox.html http://akkartik.name/firefox.html
- TeMPOraL 5y ago> able to add friction to its product that serves no purpose for its users A good moment to remind everyone: the goal of the attention economy is to make things as inefficient as possible, because money is made on the friction.
- munchler 5y agoHow’s that? Reducing friction for many sites means that users will spend more time browsing on the site. E.g. video auto-play on YouTube. In this case, though, Google doesn’t mind frustrating users because there is no competitive alternative search engine.
- TeMPOraL 5y agoIn general: attention of any person is limited. To monetize attention, it is necessary to steal it from things the user want to pay it to. > Reducing friction for many sites means that users will spend more time browsing on the site. The users usually want to spend as little time as possible on any given site. They're using it to accomplish some goal - like find a piece of information, or pick and buy an item, or be entertained. Even with YouTube: autoplay may be something the users want, and in this case it reduces friction, but money is made on the users being exposed to ads - ads before, after, during and surrounding the video. All these are friction, taking both time and attention away from watching the video itself. This is where YouTube makes money. Showing ads is an obvious case of introducing friction to monetize attention. There are subtler approaches too. They're insidious and so pervasive that some became examples of "good design" on the web. There's too many to list them all. For example, think of all the cases where you thought, "this UI is dumb" or "this design is inefficient". Chances are, it's because it ensures you have to stay on the page longer, click around more, possibly get confused. I'll give one specific family of examples: a UI/UX pattern in e-commerce, where each item is featured as a large tile or "media item" on a list. A big picture, a name, a price, perhaps one or two pieces of detail. Only 4-6 results fit on the screen at any single time - where a better design could make the site fit 20+ items instead[0]. You start clicking on them individually, and notice each item has a different set of details, possibly using different units - making it impossible to compare options. That's not accidental. That's designed to frustrate user's ability to compare items and make a good choice, in hopes they'll just stick to whatever the store surfaces at the top. -- [0] - I know because I did that. Last time I was assembling my PC, I spent an hour or two writing custom CSS rules for a major Polish electronics retailer, and was able to turn their 4-5 items/screen into some 30 items/screen. Without this, trying to pick among many similar options was too much cognitive burden for people to bother. As intended.
- toss1 5y agoEasier way: Use DDG (or some other search engine)
- a-dub 5y agothey've been doing this for a very long time. didn't know about this ping attribute for anchors though. i always just assumed it was for improving the index. the more a result gets clicked, the more relevant it must be. it's kind of a zero'th order optimization.
- rasz 5y ago>the more a result gets clicked, the more relevant it must be how? the more clickbaity Yes, but how do you judge quality by action of the uninformed (clicking before viewing content)?
- a-dub 5y agogoogle was originally based on pagerank, which was based on the idea that if you analyze the link structure of the web, you can assign quality scores to pages based on number of inbound links, and then use that quality score to propagate a high quality score to other pages that are linked to by pages with high quality scores. in other words: find the pages with reputations you trust, use their opinions to boost the reputations of other pages in the graph. you could do the same for people. first off, a user looking at a search results page isn't uninformed, there's lots of signal in the results page for a search query: domain name, familiarity/recognition of domain name, abstract text quality (grammar/spelling), abstract text, spamminess, etc. for the trained eye, that's a good amount of signal, but who has a trained eye? you could, say, have some ground truth rated webpages that you have human raters rate in house, and then you could use this to score actual users on the website in terms of who frequently picks the known best result. now you have a cohort of users who you trust in terms of clicking on quality search results. now you just pay attention to what this cohort pays attention to and let their clicks materially boost the ranking of results. this is just one over simplified way, i'm sure they do tons of stuff like this (with tons of other stuff to avoid abuse/seo/etc).
- cerved 5y agoGoogle charges ads per click, possibly mainly for that. Also it's a preferred solution to asynchronously ping the log on click rather than a synchronous redirect hack
- Ironlink 5y agoI use https://startpage.com/ https://startpage.com/ instead Good search results, with privacy
- ShroudedNight 5y agoI have encountered a number of occasions when the Startpage results are frustratingly shallow, but the direct Google results are not. It was as though Startpage was not being provided a complete set of results.
- miduil 5y agoIf only startpage hadn't an ad tracking company as an investor
- jlpom 5y agoTwitter also uses a redirect (t.co) and it's very annoying
- tohe 5y agoIs there any known way to bypass those?
- kristofferR 5y agohttps://github.com/FastForwardTeam/FastForward/ https://github.com/FastForwardTeam/FastForward/
- dandanua 5y agoI wrote a simple addon that avoids just that https://github.com/dandanua/copy-true-link https://github.com/dandanua/copy-true-link The code doesn't prevent event propagation, instead it copies the link before propagation happens. I guess this way is more reliable. It works on other sites too, like FB.
- einpoklum 5y agoCan't you just prevent most scripts on google.com from running, for this mangling not to happen?
- noxer 5y agoBookmarklet version javascript:(function(){window.addEventListener("mousedown",(event)=>{event.stopImmediatePropagation();},true);})()
- plankers 5y agofunny, i solved this problem by not using google
- pitterpatter 5y agoSpeaking of Google web products not working with Firefox: Google Meet backgrounds. What's most frustrating there is that it used to work until they disabled it to just throw up an ad for Chrome (i.e. use a "supported" browser).
- coldacid 5y agoMy solution is simple: I don't ever use Google Search. DDG results are good enough for me.
- nullc 5y agoMozilla has refused to fix the stealth URL rewriting on mousedown/onclick behavior for years[1]... it's super toxic and harmful to user privacy. Why do they bother not implementing pings when they allow an equivalent privacy invasion to continue? Either way the user's privacy is invaded, but at least URL copy/paste still works correctly with the ping functionality. [1] e.g. https://bugzilla.mozilla.org/show_bug.cgi?id=229050 https://bugzilla.mozilla.org/show_bug.cgi?id=229050 though I'm sure there have been many other bugs filed on it.
- bjornstar 5y agoWhile it doesn't modify the behavior of any sites, Intercept Redirect automatically skips most redirect services. It's a dead simple implementation that attempts to require the bare minimum permissions to do the job. https://intercept-redirect.bjornstar.com https://intercept-redirect.bjornstar.com
- canadaduane 5y agoI've been using neeva.com lately, and I'm warming up to it. I like the idea of the search engine's revenue coming from aligning with its searchers, rather than its advertisers. One thing I dislike, however: making you agree to terms when sharing an invitation link with friends. You'd think they would want that to be zero mental friction?
- musicale 5y agoIt's certainly a bad user experience to not be able to cut and paste links. It's also kind of a bad web search experience to have actual web search results hidden below ads and Google properties. On the other hand, "Google search" is very good for searching Youtube and other Google properties.
- MrPatan 5y agoWhy are you still using google search anyway?
- tsujamin 5y agoAnyone on Safari who wants to run this script - UserScript (https://apps.apple.com/us/app/userscripts/id1463298887 https://apps.apple.com/us/app/userscripts/id1463298887) seems to work well
- IanSanders 5y agoShoutout to whoogle
- grappler 5y agopsst, don't tell google, but sometimes I like to click the triple dots next to a search result and copy the url in the popup box to the clipboard to get the url without any of the tracking crap. (I mostly do this when google's redirect page lags for some reason)
- rasz 5y agoDont worry, they probably also track that [...] click :)
- neop1x 5y agoIt is also possible to use user scripts & Violent Monkey on mobile - Kiwi browser [1], based on Chromium, supports browser extensions as well as full Developer Tools. :) [1] https://kiwibrowser.com/ https://kiwibrowser.com/