
chrome.ahk的作用chrome.ahk类似于浏览器脚本/tampermonkey可以对网页做些操作但如果我想浏览器脚本/tampermonkey获取其他应用里的数据后者就没法做到了对吧chrom.ahk能做到的直接在.ahk文件里编写对chrome网页的操作同时还可以利用ahk对别的软件操作。比如“我希望从别的软件复制文本/图片在指定页面里添加该图文的dom或执行所需的js还可将在别的软件拿到的数据作为该js的传入参数”。这只是我举的例子总之在某些场景下还是很好用的前置工作AutoHotkey的下载chrome.ahk是搭配AutoHokey使用的注意chrom.ahk使用的是v1的语法所以最好下载AutoHotkey V1直接在AutoHokey该超链接选择所需版本下载下载默认的地址即可默认下载地址C:\Program Files\AutoHotkey。有需要也可下载自定义地址参考AutoHotkey下载、安装这里不描述另外AutoHotkey V1和V2都下载也不影响ahk文件的运行就是了chrom.ahk的下载官网地址chrome.ahk注意拉代码需要拉完整代码直接拉代码或直接下载压缩包可能会有问题会导致lib里那些文件夹是空的官方lib里的文件夹是引用了另一个git包使用该命令可以完整下载git clone --recurse-submodules https://github.com/G33kDude/Chrome.ahk.git开启 Chrome 远程调试有两种主要方式方法一修改桌面快捷方式推荐每次开启只需要点击该图标和方法二通过命令行/运行窗口启动临时测试用。方法一修改桌面快捷方式复制一个快捷方式在桌面上找到的Google Chrome图标按Ctrl C然后Ctrl V复制出一个新的图标重命名为“Chrome 自动化调试”以防和你平时用的浏览器缓存弄混。打开属性设置右键点击这个新图标选择「属性」。C:\Program Files\Google\Chrome\Application\chrome.exe换成你的chrome地址 --remote-debugging-port9222 --user-data-dirD:\system-moren\test\ChromeProfile保存退出点击「确定」保存。如果系统提示需要管理员权限点击「继续」即可。参数解释-remote-debugging-port9222让 Chrome 开放 9222 端口供 AHK 脚本连接控制。-user-data-dir...可选指定一个数据文件夹这玩意是用来存储“调试版 Chrome”的缓存、Cookie、历史记录、登入的账号和插件等等浏览器数据。这样运行该chrome图标时作为一个完全独立的浏览器启动不会影响到自己平时用的chrome。–user-data-dir不是固定的这个路径完全可以看自己。方法二通过「运行」窗口启动临时测试只想临时测试一下按下快捷键Win R打开系统的「运行」窗口。输入以下命令并点击确定(注如果你的 Chrome 没有安装在默认路径需要将上面的绝对路径替换为你电脑上chrome.exe的实际路径。)C:\Program Files\Google\Chrome\Application\chrome.exe--remote-debugging-port9222--user-data-dirD:\system-moren\test\ChromeProfile验证chrome.ahk是否有用;注意include是引入具体的那个chrome.ahk文件不是那个chrome.ahk文件夹 #Include./Chrome.ahk/Chrome.ahk;对应前面的--user-data-dir没有的话可以手动创建或用ahk创建 profile:D:\system-moren\test\ChromeProfiletry{;连接已经运行的ChromeDebugPort填自己所选的开放端口;补充开启chrome调试的方式一是用ahk命令开启二是好像还可以直接利用newChrome进行开启并连接ChromeInst:{base:Chrome,DebugPort:9222}PageInst:ChromeInst.GetPage()if(!IsObject(PageInst))throwException(GetPage() 返回失败);url选一个能用的url即可PageInst.Call(Page.navigate,{url:https://www.autohotkey.com/})PageInst.WaitForLoad(complete,2000)PageInst.Call(Page.bringToFront);注意编码选择ANSIutf-8的MsgBox输出效果会乱码至少我这里是这样的MsgBox,64,Test,页面加载完成}catche{MsgBox,16,Chrome.ahk 错误,%Message:ne.MessagennWhat:ne.WhatnnFile:ne.FilennLine:ne.Line}ExitApp