autohotkey将文本输入Yahoo搜索框

时间:2016-08-11 10:32:13

标签: autohotkey

我正在尝试将文本输入到Yahoo搜索框中,但由于某种原因它无效。它适用于Bing,只是想知道为什么它不适用于雅虎。

这是我的代码

IEGet(name="") {
   IfEqual, Name,, WinGetTitle, Name, ahk_class IEFrame     ;// Get active window if no parameter
   Name := (Name="New Tab - Windows Internet Explorer")? "about:Tabs":RegExReplace(Name, " - (Windows|Microsoft)? ?Internet Explorer$")
   for wb in ComObjCreate("Shell.Application").Windows()
      if wb.LocationName=Name and InStr(wb.FullName, "iexplore.exe")
         return wb
}

wb := IEGet("Yahoo") ;IE instance already open and tab named google exists


wb.document.All.p.value := "tu1"


MsgBox, Done!

该网站为https://uk.yahoo.com/?p=us,我是Autohotkey正在使用现有标签。

2 个答案:

答案 0 :(得分:0)

; your function above...
oMouseEvents:=(oDoc:=IEGet("Yahoo").document).createEvent("MouseEvents")
oMouseEvents.initEvent("click", True, True)
oDoc.querySelector("#UHSearchBox").value:="tu1"
oDoc.querySelector("#UHSearchWeb").dispatchEvent(oMouseEvents)

答案 1 :(得分:-1)

尝试不使用" p"

wb.document.All.value := "tu1"