Holen Sie sich die erste URL bei der Google-Suche nach hervorgehobenem Text in jeder Anwendung

Holen Sie sich die erste URL bei der Google-Suche nach hervorgehobenem Text in jeder Anwendung

Gibt es eine Möglichkeit, die erste URL für hervorgehobenen Text von Google abzurufen? Es ist, als hätten wir auf Mobilgeräten eine in die Tastatur integrierte Suche, aber nicht auf Desktops.

Dies ist besonders nützlich, wenn ich auf ein Wikipedia-Thema oder eine Software-Website auf Stackoverflow usw. verlinken möchte.

Antwort1

Ich habe gerade eine einfache Möglichkeit dafür entwickelt. Es ist nicht die beste, aber es funktioniert für mich im Moment gut genug. Ich habe es nicht an die Formatierung von Stackoverflow angepasst, da ich es vorerst flexibel haben wollte. Werde es später auf GitHub hochladen. Wahrscheinlich muss es noch besser sein, damit es wirklich funktioniert.

Speichern Sie Folgendes als Googlesearch.ahk und führen Sie es mitautohotkey

; Search google for the highlighted word
; then get the first link address and put it on the Clipboard

^!r:: Reload

#+g::
    bak = %clipboard%
    Send, ^c
    ;clipboard = %bak%`r`n%clipboard%
    Query = %clipboard%
    wb := ComObjCreate("InternetExplorer.Application")
    ;wb := IEGet()
    wb.Visible := false
    wb.Navigate("www.google.com/search?q=" Query)
    While wb.readyState != 4 || wb.document.readyState != "complete" || wb.busy ; wait for the page to load
      sleep 100
    ; loop % (Nodes := wb.document.getElementById("rso").childNodes).length
    ;     Links_urls .= (A_index = 1) ? Nodes[A_index-1].getElementsByTagName("a")[0].href : "`n" . Nodes[A_index-1].getElementsByTagName("a")[0].href
    ; Msgbox %Links_urls%

    Nodes := wb.document.getElementById("rso").childNodes
    First_link := Nodes[0].getElementsByTagName("a")[0].href
    Clipboard = %First_link%
    TrayTip, First Link on Google Search, %First_link% `r`n Ctrl+V to paste the link
return

verwandte Informationen