如何在没有 Puppeteer 的情况下通过 DevTools 协议模拟 Chrome window 中的点击?
How to simulate clicks in a Chrome window via the DevTools Protocol without Puppeteer?
我最近使用 Puppeteer 和 Electron 制作了一个 Chrome 自动答题器,但这创建了一个 40 兆字节的可执行文件,这对于一个简单的自动答题器来说似乎太过分了。
我花了几个小时试图弄清楚 Puppeteer 到底做了什么来发送点击,但我得到的最接近的是 this link.
然而,却是JavaScript。我的 Puppeteer 自动答题器控制一个外部的、预装的 chrome.exe
。那么它是否发送 JavaScript 字符串以供浏览器评估?
我想在没有 Node、Puppeteer 或 Electron 的情况下重做 my auto-clicker,作为独立的可执行文件而不是 Chrome 扩展。
我可能会使用 C++ 或 Pascal,但我不一定要代码(尽管那会很好),但更多的是如何与 API Puppeteer 正在交谈的对象进行通信。
我认为您正在寻找 Chrome Devtools API。
as a standalone executable as opposed to a Chrome extension
我不确定你在这里的确切意思,如果你的意思是没有 chrome 的依赖性,那么你只是在创建一个自动点击器并希望 chrome window 和 URL 是正确的。但这与 chrome devtools 无关。
据我所知,puppiteer 附带的 chrome.exe 注入了 puppiteer 或 selenium 的扩展名(但不要引用我的话)。
https://chromedevtools.github.io/devtools-protocol/
使用 API,我建议使用 inspectedWindow
,使用 eval
执行一些 JS。
chrome.devtools.inspectedWindow.eval(
"document.getElementById('someEl').click();",
function(eventRes, isException) {
// callback ?
});
虽然从头开始,但首先创建一个基本扩展.. https://developer.chrome.com/extensions/getstarted
从那里您可以使用启动命令参数将您的扩展程序添加到独立 chrome.exe。
Path\To\Google\Chrome\Application\chrome.exe" --load-extension="C:\PAthOfExtension"
应该会让你继续。
更多选项
或者或者更确切地说是一些进一步的选择.. 将包括节点和 puppiteer 的当前自动点击器应用程序打包到 electron 应用程序中,该应用程序可以 运行 作为独立的 exe..
无需第 3 方直接访问 CDP:
https://github.com/aslushnikov/getting-started-with-cdp/blob/master/README.md
我最近使用 Puppeteer 和 Electron 制作了一个 Chrome 自动答题器,但这创建了一个 40 兆字节的可执行文件,这对于一个简单的自动答题器来说似乎太过分了。
我花了几个小时试图弄清楚 Puppeteer 到底做了什么来发送点击,但我得到的最接近的是 this link.
然而,却是JavaScript。我的 Puppeteer 自动答题器控制一个外部的、预装的 chrome.exe
。那么它是否发送 JavaScript 字符串以供浏览器评估?
我想在没有 Node、Puppeteer 或 Electron 的情况下重做 my auto-clicker,作为独立的可执行文件而不是 Chrome 扩展。
我可能会使用 C++ 或 Pascal,但我不一定要代码(尽管那会很好),但更多的是如何与 API Puppeteer 正在交谈的对象进行通信。
我认为您正在寻找 Chrome Devtools API。
as a standalone executable as opposed to a Chrome extension
我不确定你在这里的确切意思,如果你的意思是没有 chrome 的依赖性,那么你只是在创建一个自动点击器并希望 chrome window 和 URL 是正确的。但这与 chrome devtools 无关。
据我所知,puppiteer 附带的 chrome.exe 注入了 puppiteer 或 selenium 的扩展名(但不要引用我的话)。
https://chromedevtools.github.io/devtools-protocol/
使用 API,我建议使用 inspectedWindow
,使用 eval
执行一些 JS。
chrome.devtools.inspectedWindow.eval(
"document.getElementById('someEl').click();",
function(eventRes, isException) {
// callback ?
});
虽然从头开始,但首先创建一个基本扩展.. https://developer.chrome.com/extensions/getstarted
从那里您可以使用启动命令参数将您的扩展程序添加到独立 chrome.exe。
Path\To\Google\Chrome\Application\chrome.exe" --load-extension="C:\PAthOfExtension"
应该会让你继续。
更多选项
或者或者更确切地说是一些进一步的选择.. 将包括节点和 puppiteer 的当前自动点击器应用程序打包到 electron 应用程序中,该应用程序可以 运行 作为独立的 exe..
无需第 3 方直接访问 CDP: https://github.com/aslushnikov/getting-started-with-cdp/blob/master/README.md