有没有办法从 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