Changes for version 0.37 - 2019-09-30

  • WWW::Mechanize::Chrome now asks Chrome for the URL. This allows the test suite (and your programs) to run in parallel, each using their own Chrome instance without them treading onto each others toes.
  • WWW::Mechanize::Chrome can now talk to Chrome v72+ using pipes (fd 3 and fd 4) on unixish OSes. In theory, using fd 3 and fd 4 is possible on Windows as well but not yet implemented. Doing this allows you to avoid sockets in the local communication.
    • Use
      • pipe => 1
    • in the constructor to switch to using pipes.
  • API change: Use ->getTargets->get() instead of ->list_tabs() ->list_tabs() will be unsupported in the future.
  • The following three Chrome versions are now unsupported, as they do not allow reading the websocket URL from Chrome:
    • Chrome/59.0.3071.115
    • HeadlessChrome/60.0.3110.0
    • HeadlessChrome/61.0.3141.0
    • If you really, really need them, please contact me so that I know that I need to keep the old connection code around.

Modules

asynchronous dispatcher for the DevTools protocol
wrapper for talking to a page in a Target
choose the best transport backend
AnyEvent backend for Chrome communication
Mojolicious backend for Chrome communication
IO::Async backend for Chrome communication
choose the best transport backend
EXPERIMENTAL Local pipe backend for Chrome communication
EXPERIMENTAL Local pipe backend for Chrome communication
retrieve cookies from a live Chrome instance
automate the Chrome browser
Getting things done with WWW::Mechanize::Chrome
Domain Specific Language for short scripts
WWW::Mechanize::Chrome example programs.
represent a Chrome HTML node in Perl
Things to watch out for

Provides

in lib/Chrome/DevToolsProtocol/Transport/Win32PipeOpener.pm