Chrome में Google खोज परिणाम लिंक को रीडायरेक्ट (राइट-क्लिक पर) कैसे अक्षम करें?


22

Google में लॉग इन करने पर, Google खोज परिणामों को पुनर्निर्देशित किया जाता है (ट्रैकिंग उद्देश्यों आदि के लिए)। यह कष्टप्रद है, क्योंकि साइट पर आए बिना URL को कॉपी / पेस्ट करना आसान नहीं है। यदि कोई रीडायरेक्ट नहीं होगा, तो मैं खोज परिणामों में लिंक पर राइट-क्लिक करूंगा और "कॉपी लिंक एड्रेस कॉपी" करूंगा। अब यह कुछ Google जावास्क्रिप्ट कोड द्वारा बदल दिया गया है जो राइट-क्लिक के लिए मॉनिटर करता है।

इसे Chrome पर कैसे अक्षम किया जा सकता है? मुझे लगता है कि इसके लिए एक क्रोम एक्सटेंशन हुआ करता था, लेकिन अब यह काम नहीं कर रहा है।


आपके राइट-क्लिक का उद्देश्य क्या है?
Beniamin

4
@ बैनामिन: जैसा कि मेरे प्रश्न में कहा गया है: "URL को [पेस्ट] कॉपी करें"। मैं सिर्फ URL प्राप्त करना चाहता हूं (उदाहरण के लिए किसी रिपोर्ट में चिपकाने के लिए)
Rabarberski

4
FYI करें: बस कर्सर के साथ पाठ का चयन करना और ctrl-c को
दबाए रखना

ठीक है। लेकिन जब आप लिंक पर राइट-क्लिक करते हैं, तो यह Google ट्रैकिंग लिंक में बदल जाता है। जब तक आप पेज नहीं खोलते, तब तक आपको वह लिंक नहीं मिलेगा, Google आपको इच्छित पृष्ठ पर पुनर्निर्देशित करेगा और आपके पास वही होगा जो आप चाहते हैं।
बेनामिन

2
सवाल यह है कि इससे कैसे बचा जाए। (पहले कुछ क्रोम एक्सटेंशन था (अब और काम नहीं करता है), और फ़ायरफ़ॉक्स के लिए कुछ ग्रीसीमोनी स्क्रिप्ट, लेकिन पिछली बार जब मैंने चेक किया तो मेरे पास इसके साथ कुछ मुद्दे थे। इसलिए "जब तक आप पृष्ठ को नहीं खोलते हैं तब तक आपको वह लिंक नहीं मिलेगा।" मतलब नहीं है)।
राबार्शस्की

जवाबों:


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 पर छोड़ दें और मुझे बताएं कि क्या यह मदद करता है।

पुनश्च। अंग्रेजी मेरी बोली जाने वाली भाषा नहीं है इसलिए आपको गलत समझने के लिए क्षमा करें।

संपादित करें: मैंने अतिरिक्त तर्क जोड़े ताकि यह Google झटपट के साथ काम करे। मुझे बताएं कि क्या यह आपके लिए काम करता है।

संपादित करें: मैंने "Google झटपट समर्थन के बिना" संस्करण में वापस रोल किया।


आपके परिश्रम के लिए धन्यवाद। मैंने कुछ इसी तरह की कोशिश की, हालांकि, जब मैं क्रोम पर स्क्रिप्ट फ़ाइल को खींचता हूं, तो यह ब्राउज़र में खोला जाता है, स्क्रिप्ट को स्थापित करने के बजाय स्रोत कोड प्रदर्शित करता है।
Rabarberski

फ़ाइल खोलने के लिए Ctrl + O आज़माएं। और क्या आपको यकीन है कि आपने इसका नाम कुछ इस तरह रखा है: google.user.js?
बेनीमीन

और मैंने पढ़ा है कि क्रोम विंडो को अधिकतम करने की आवश्यकता है।
बेनिमिन

या क्रोम में कुछ ग्रीसीमोनीक्स एक्सटेंशन स्थापित करें। यह आपको स्क्रिप्ट स्थापित करने में मदद करेगा और ग्रीसीमेक स्क्रिप्ट को काम करना चाहिए। उदाहरण के लिए: chrome.google.com/webstore/detail/…
बेनियामिन

1
@ रबारकी, तब आपको Google झटपट का उपयोग बंद करना होगा।
सिंथेटिक्स


3

यदि आप फ़ायरफ़ॉक्स का उपयोग कर रहे हैं , तो आप भाग्यशाली हैं क्योंकि निम्नलिखित उत्तर आप पर लागू होता है। यदि आप क्रोम का उपयोग कर रहे हैं, तो आप बहुत कम भाग्यशाली हैं, इस उत्तर के नीचे देखें।

Greasemonkey एक बार DOM लोड होने के बाद यूजर स्क्रिप्ट को फायर करता है , इस प्रकार आपको "DOM तैयार" श्रोता को लागू करने की आवश्यकता नहीं है।

इसके अलावा, आप फ़ायरफ़ॉक्स पर हैं, इसलिए आप कुछ आधुनिक कैंडी का उपयोग कर सकते हैं: for...of, let

यहाँ परिणामस्वरूप 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स्थानीय घोषणाएँ नहीं हैं, इसलिए आपको IIFE में उपरोक्त कोड संलग्न करने की आवश्यकता नहीं है ।


दुर्भाग्यपूर्ण क्रोम (टेम्परमॉन्की) उपयोगकर्ताओं के लिए:

लिंक स्क्रिप्ट के निष्पादित होने के समय नहीं पाए जाते हैं, भले ही 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:
Google पृष्ठ में मार्कअप परिवर्तन के कारण, इसे बदलने की h3.rआवश्यकता है div.r
मैं आगे चला गया और प्रतिस्थापित h3.r > aसाथ #res .r > a(प्रतिस्थापित बस ".class" के साथ "tag.class", और सुरक्षा के रूप में एक माता पिता जोड़ा ताकि चयनकर्ता भी सामान्य नहीं है)।


फ़ायरफ़ॉक्स लिपि का पाठ लेना, और इसे शुरू करने के लिए 'जावास्क्रिप्ट:' को जोड़ना और फिर इसका एक बुकमार्कलेट बनाना (एक ला बोबोबो का जवाब) मेरे लिए बहुत काम आया।
ojchase

0

अगर मैं चयनकर्ता को इसमें परिवर्तित करता हूं तो बेंजामिन की स्क्रिप्ट मेरे लिए काम करती है: li.g div.vsc h3.r a

वास्तव में यह उपयोगकर्ता स्क्रिप्ट की तरह लगता है कि यह काम करेगा:

Google ट्रैकिंग-बी-ग्रिसेमनीके के लिए चला गया


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 );
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.