Как имитировать щелчки в окне Chrome с помощью протокола DevTools без Puppeteer? - PullRequest
1 голос
/ 27 мая 2020

Недавно я сделал автокликер Chrome с помощью Puppeteer и Electron, но при этом создается исполняемый файл размером 40 мегабайт, что кажется чрезмерным излишеством для простого автокликера.

Я потратил часы, пытаясь выяснить, что именно делает Puppeteer для отправки кликов, но ближайшая эта ссылка.

Однако это JavaScript. Автокликер My Puppeteer управляет внешним предустановленным chrome.exe. Значит, он отправляет JavaScript строк для оценки браузером?

Я хотел бы переделать мой автоматический кликер без Node, Puppeteer или Electron, как автономный исполняемый файл, а не a Chrome extension.

Я, вероятно, буду использовать C ++ или Pascal, но я не обязательно прошу код (хотя это было бы хорошо), но больше о том, как общаться с любым API Puppeteer разговаривает с.

1 Ответ

1 голос
/ 27 мая 2020

Думаю, вы ищете Chrome Devtools API.

как автономный исполняемый файл, а не Chrome расширение

Я не совсем уверен, что вы имеете в виду, если вы имеете в виду без зависимости от chrome, то вы просто создаете автокликер и надеетесь, что окно chrome и URL-адрес правильные. Но это меньше о chrome инструментах разработчика.

Насколько мне известно, chrome .exe, который поставляется с puppiteer, вводится с расширением, например, от puppiteer или selenium (но не цитируйте меня по этому поводу).

https://chromedevtools.github.io/devtools-protocol/

Используя API, я бы предложил выбрать inspectedWindow, возможно, для выполнения некоторых JS с использованием eval.

chrome.devtools.inspectedWindow.eval(
          "document.getElementById('someEl').click();",
           function(eventRes, isException) {
             // callback ?
           });

Go с самого начала и сначала создайте базовое c расширение .. https://developer.chrome.com/extensions/getstarted

Оттуда вы можете добавить свое расширение в автономный chrome .exe, используя параметры команды запуска.

Path\To\Google\Chrome\Application\chrome.exe" --load-extension="C:\PAthOfExtension"

Должен помочь.

Дополнительная опция

Альтернативно или, вернее, некоторые дополнительные опции .. Может заключаться в том, чтобы упаковать ваше текущее приложение автокликера, включая узел и Puppiteer, в приложение electronic , которое может работать как автономный exe ..

Непосредственно в CDP без сторонних поставщиков: https://github.com/aslushnikov/getting-started-with-cdp/blob/master/README.md

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...