Chromeで(右クリックで)Google検索結果リンクリダイレクトを無効にする方法


22

Googleにログインすると、Googleの検索結果がリダイレクトされます(追跡などのため)。サイトにアクセスせずにURLをコピー/貼り付けるのは簡単ではないため、これは面倒です。リダイレクトがない場合は、検索結果のリンクを右クリックして[リンクアドレスのコピー]を選択します。現在では、右クリックを監視するいくつかのGoogle JavaScriptコードによって変更されています。

Chromeでこれを無効にするにはどうすればよいですか?以前はChrome拡張機能があったと思いますが、もう機能していないようです。


右クリックの目的は何ですか?
ベニアミン

4
@ベニアミン:私の質問で言ったように:「URLをコピー[貼り付け]」。URLを取得するだけです(たとえば、レポートへの貼り付けなど)
Rabarberski

4
参考:googleが長いURLを連結するため、カーソルでテキストを選択してctrl-cを押すだけが常にオプションとは限りません
-Rabarberski

OK。ただし、リンクを右クリックすると、Googleトラッキングリンクに変わります。そのため、ページを開かない限り、そのリンクは表示されません。Googleは目的のページにリダイレクトし、必要なものを取得します。
ベニアミン

2
問題はまさにそれを避ける方法です。(以前はいくつかのchrome拡張機能がありました(もう機能しません)、firefox用の一部のグリースモンキースクリプトがありましたが、前回確認したときに問題がありました。意味がありません)。
-Rabarberski

回答:


7

今、私はあなたが何を望んでいるかを知ったときonmousedown、リンクから属性を削除する小さなスクリプトを書きました。

ここにあります:

// ==UserScript==
// @name           Delete onmousedown
// @namespace      google
// @include        http://www.google.*/*
// ==/UserScript==
var runOnce = function(){
    var items = document.querySelectorAll('li.g h3.r a');
    for(var i = 0, len = items.length; i< len; i++){
        items[i].removeAttribute('onmousedown');
    }
}
document.body.appendChild(document.createElement("script")).innerHTML = "("+runOnce+")()";

.user.jsで終わるファイルとして保存し、Google Chromeにドロップして、問題が解決したかどうかをお知らせください。

PS。英語は私の話し言葉ではないので、誤解して申し訳ありません。

編集:追加のロジックを追加したので、Google Instantで動作します。うまくいくかどうか教えてください。

編集:Googleインスタントサポートを「含まない」バージョンにロールバックしました。


努力してくれてありがとう。同様のことを試しましたが、スクリプトファイルをChromeにドラッグすると、ブラウザで開かれ、スクリプトをインストールする代わりにソースコードが表示されます。
-Rabarberski

Ctrl + Oを試してファイルを開きます。google.user.jsのような名前を付けましたか?
ベニアミン

そして、クロムウィンドウを最大化する必要があることを読みました。
ベニアミン

または、chromeにgreasemonkeyのような拡張機能をインストールします。スクリプトのインストールに役立ち、greasemonkeyスクリプトが機能するはずです。たとえば、次のようにchrome.google.com/webstore/detail/...
Beniamin

1
@ Rabarberski、Google Instantの使用を停止する必要があります。
Synetech

5

「間接」Chrome拡張機能を使用してみてください。

Googleの検索結果からこの追跡とリダイレクトを削除します。HTTPとHTTPSの両方でのgoogleの使用をサポートします。


3

Firefoxを使用している場合、次の答えが当てはまるので幸運です。Chromeを使用している場合、幸運ははるかに少なくなります。この回答の下部を参照してください。

Greasemonkey は、DOMがロードされるとユーザースクリプトを起動するため、「DOM対応」リスナーを実装する必要はありません。

また、あなたは、Firefox上にあるので、あなたは、いくつかの近代的なお菓子を使用することができますfor...oflet

結果として得られるGreasemonkeyスクリプトは次のとおりです。

// ==UserScript==
// @name        Remove Google redirects
// @namespace   google
// @description Remove redirects from Google Search result links.
// @include     https://www.google.*/*
// @version     1
// @grant       none
// ==/UserScript==

for (let element of document.querySelectorAll('#res .r > a')) {
    element.removeAttribute('onmousedown');
}

おかげでlet、したがって、あなたは上記のコードを囲む必要はありません、ローカルの宣言がない生命維持


残念なChrome(Tampermonkey)ユーザーの場合:

スクリプトが実行された時点ではリンクは見つかりませんがdocument.readyState === 'complete'、その結果…タイマー付きのループを実装する必要があります。

したがって、次のようになります。

// ==UserScript==
// @name        Remove Google redirects
// @namespace   google
// @description Remove redirects from Google Search result links.
// @include     https://www.google.*/*
// @version     1
// @grant       none
// ==/UserScript==

(function removeGoogleRedirects() {

    var links = document.querySelectorAll('#res .r > a');

    if (links.length === 0) {
        setTimeout(removeGoogleRedirects, 100);
        return;
    }

    for (var link of links) {
        link.removeAttribute('onmousedown');
    }

})();

2018年10月更新:
Googleページのマークアップが変更されたh3.rため、に変更する必要がありますdiv.r
さらに進んで置き換えh3.r > aました#res .r > a(「tag.class」を「.class」に置き換え、セキュリティとして親を追加して、セレクターがあまり一般的ではないようにしました)。


Firefoxスクリプトのテキストを取得し、その先頭に「javascript:」を追加し、それからブックマークレット(la boboboboの答え)を作成してくれました。
02


0

このスクリプトレットの実行が最も簡単だと思います。コピーとは、あなたのブックマークバーにドラッグし、それをクリックする前に、検索結果のリンクのいずれかを右クリック。

javascript: var items = document.getElementsByTagName('a');  for( var i = 0 ; i < items.length; i++ )  if( items[i].className=='l' )  items[i].onmousedown = null ;

神々これらの人々は悪魔ですが、私はこの投稿の日付の時点で、ベニアミンが与えたスクリプトを更新しました。この軽量化のトリックを使用し、マウスダウンイベントの要素を取り除く前にページがロードされていることを確認してください。この作業を行うには、TamperMonkeyを使用する必要があります。

// ==UserScript==
// @name           Delete onmousedown
// @namespace      google
// @version        0.1
// @description    Allows you to right click links on Google search results without having them mangled on you.
// @include          http://www.google.*/*
// ==/UserScript==
var tid = setInterval( function () {
    if ( document.readyState !== 'complete' ) return;

    var items = document.getElementsByTagName('a');

    var succeeded=false;
    for( var i = 0 ; i < items.length; i++ )
    {
      if( items[i].className=='l' )
      {
        if( items[i].onmousedown ) { succeeded=true; } // we stripped the urls
        items[i].onmousedown = null ;
      }
    }

    if( succeeded )  clearInterval( tid ); // stop invoking this routine when we succeeded.
}, 100 );
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.