일관된 Google 느낌이 좋은 행운 매크로 매우 좋은 것으로 간주

Autohotkey를 사용하여 검색어의 첫 번째 Google 결과로 빠르게 이동하는 스크립트를 만들고 있습니다. 내 문제는 URL이 약간 일치하지 않지만이 작업을 위해 찾은 유일한 방법입니다.

http://www.google.com/search?q=searchterm&btnI=745

이것은 첫 번째 적중이 매우 좋은 것으로 간주 될 때만 작동합니다. 그렇지 않으면 Google은 정상적인 10 개의 결과를 보여줍니다. 그러나 첫 페이지에 나오는 실제 “I ‘m Feeling Lucky”버튼은 항상 첫 번째 결과를 보여줍니다.

다음 링크를 시도하십시오.

http://www.google.com/search?q=new%20york&btnI=745          <- works
http://www.google.com/search?q=new%20york%20dijon&btnI=745  <- doesn't work

첫 페이지에 “New York York Dijon”을 입력 한 다음 “I ‘m Feeling Lucky”를 누르십시오.

URL 형식으로 일관되게 작동하도록하려면 어떻게해야합니까?

편집 : 좋아, 이것이 단일 URL에서 가능하지 않은 것 같습니다. 게시 된 경우 그리스 몽키 스크립트 해결 방법을 올바른 것으로 표시합니다.



답변

해결 방법 Greasemonkey 스크립트를 작성했습니다.

// ==UserScript==
// @name         Google IFL
// @match        https://*.google.com/*?lucky=*
// @match        http://*.google.com/*?lucky=*
// ==/UserScript==

document.getElementById("gsr").style.display = 'none'; // optional. shows blank screen before forwarding. just looks better imo.
document.getElementById("gbqfq").focus();
var pathname = document.URL;
var start = pathname.indexOf("?lucky=");
var searchterm = pathname.substring(start+7);
document.getElementById("gbqfq").value = decodeURI(searchterm);
var btnLucky = document.getElementsByName('btnI')[0];
btnLucky.click();

이 스크립트는 (으)로 이동 한 경우 항상 Google의 “I Feel Lucky”선택 항목으로 안내합니다 www.google.com/?lucky=searchterm_goes_here.

FireFox에서로 이동하는 북마크의 키워드를 사용하여 사용하고 www.google.com/?lucky=%s있습니다.


답변

자바 스크립트를 사용 중지하면 Google에서 쿠키와 HTTP Referrer헤더를 모두 사용 https://www.google.com하여 Google 홈페이지에서 실제로 왔고 “I ‘m Feeling Lucky”버튼을 클릭했는지 추적 하도록 설정되어 있는 것 같습니다 . URL을 사용하여 Google에게 행운의 결과를 전하도록 설득 할 수는 없다고 생각합니다.


답변

내가 찾은 가장 좋은 솔루션은 Chrome> 환경 설정> 검색 엔진 관리 … 추가 :

  • 검색 엔진 : 운이 좋은 느낌입니다
  • 키워드 : \ (원하는 단축키로 교체)
  • URL : {google : baseURL} search? q = % s & btnI

그런 다음 이 스레드 에 따라 다음 Greasemonkey / Tampermonkey 스크립트를 추가하여 Google을 참조 자로하여 페이지를 다시로드하십시오.

// ==UserScript==
// @name         I'm feeling lucky fix
// @version      0.0
// @description  Makes Google I'm feeling lucky work reliably from the address bar
// @author       Will Rice
// @match        http://*.google.co.uk/search?q=*&btnI
// @match        https://*.google.co.uk/search?q=*&btnI
// @match        http://*.google.com/search?q=*&btnI
// @match        https://*.google.com/search?q=*&btnI
// ==/UserScript==

document.getElementsByTagName("body")[0].style.display = "none";
window.location.href = location;

스크립트를 “실제로 실행”으로 설정하고 적절하다고 판단되는대로 추가 Google TLD를 추가합니다 (Tampermonkey에서 정규식을 사용할 수 없음).


답변

이 페이지의 다른 우아한 솔루션이 더 이상 작동하지 않으므로 여기에 솔루션을 추가하고 있습니다.이 솔루션은 2018 년 12 월의 tampermonkey chrome에서 작동합니다.

@match와 @include는 tampermonkey (@match는 검색어를 포함 할 수 없음)로 변경되어 Google이 URL을 변경하는 경우 약간의 디버깅 좌절을 일으켰습니다.

// ==UserScript==
// @name         I'm feeling lucky fix
// @version      0.1
// @description  Makes Google I'm feeling lucky work reliably from the address bar
// @author       Kevin Watt
// @include      https://www.google.*/*btnI*
// ==/UserScript==
// // @match      https://*/*
if (location.href.indexOf('btnI')) document.querySelector('#search a').click()


답변