【浏览器操控示例】通过JS元素赋值的方式,对一些网站编辑框进行赋值后并点击搜索的小示例

AHK操控浏览器入门教程

以下示例需要Chrome.ahk库支持才能工作

; https://www.autohotkey.com/boards/viewtopic.php?p=392399#p392399
#Include <Chrome>

; 匹配已经打开并设置好的百分浏览器或其它端口开放的浏览器,如果匹配不到已打开浏览器就会新建浏览器
if (Chromes := Chrome.FindInstances())
  ChromeInst := {"base": Chrome, "DebugPort": Chromes.MinIndex()}
 else
  ChromeInst := New Chrome("User_Data")
TabInst := ChromeInst.GetPage()

TabInst.Call("Page.navigate", {"url": "https://www.js-filter.com/catalogue"})
TabInst.WaitForLoad()   

; TabInst.Evaluate("document.querySelector('#frmPartNoSearch.input-field').className = 'input-field is-charged';")  ; 不用也可以

TabInst.Evaluate("document.querySelector('#txtPartNo').value = 'test value';")
TabInst.Evaluate("document.querySelector('#frmPartNoSearch').submit();")
Return


F1::TabInst.Evaluate("document.querySelector('#btnProductSearch').click();")  ; 点击搜索按钮

/*
我会做这样的事情来输入,然后提交该表单:

document.querySelector('#frmPartNoSearch.input-field').className = 'input-field is-charged';
document.querySelector('#txtPartNo').value = 'test value';
document.querySelector('#frmPartNoSearch').submit();

我最初更改类名的原因是因为他们对输入设置的所有幻想。你真的不需要这样做。
但是如果你想看到它很好地改变输入,只需运行前两行。
*/

 

声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。