获取 Google 搜索中任何应用程序中突出显示的文本的第一个 URL

获取 Google 搜索中任何应用程序中突出显示的文本的第一个 URL

有没有办法从 Google 获取突出显示文本的第一个 URL?这就像我们在移动设备上有键盘集成搜索,但在桌面上却没有。

当我想链接到维基百科主题或 stackoverflow 上的软件网站等时,它特别有用。

答案1

我刚刚创建了一个简单的方法。这不是最好的,但目前对我来说已经足够好了。我没有定制它以匹配 stackoverflow 的格式,因为我现在希望它灵活。稍后会把它放在 github 上。可能需要更好才能让它真正发挥作用。

将以下内容保存为 Googlesearch.ahk 并使用运行自动热键

; 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

相关内容