holsee / chroxy

Headless Chrome as a Service

Home Page:https://hex.pm/packages/chroxy

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Is this similar to Puppeteer?

GildedHonour opened this issue · comments

Is this library similar to Puppeteer - https://pptr.dev/ - in terms of the protocol it uses?

Puppeteer is a Node library which provides a high-level API to control Chrome or Chromium over the DevTools Protocol.

I am not* super familiar with Puppeteer, however, from the description, it appears to be a client library. Whereas Chroxy is a way of running instances of Headless Chrome / Chromium which can be communicated with via the DevTools Protocol (more like a server which manages instances of chrome, with a single endpoint which allows for routing to the chrome instances). I have not tested connect to Chrome, via Chroxy, using Puppeteer.

During my testing, and my use of Chroxy from other systems, I used the following Library https://github.com/holsee/chroxy_client which uses https://github.com/andrewvy/chrome-remote-interface in order to communicate and send/receive commands from Chroxy. If Puppeteer speaks using the same protocol, then in theory, it should be possible to leverage it.

Just remember the 1 difference is within Chroxy you need to make a request to obtain to address of the chrome instance (see the readme). This is because there are many (dynamic) instances of Chrome running within Chroxy and most client libraries are designed for direct single instance connections to Chrome.