Daniel Martí 939d377090 avoid hanging when Chrome is closed separately
It's Run that actually starts a Browser, not NewContext. If the browser
is closed or crashes, the browser handler will fail to read from the
websocket, and its goroutines will stop.

However, the target handler's goroutines may not stop. The browser
handler uses a separate cancel function to stop itself when encountering
a websocket error, so that doesn't propagate to the original context
children, like the target handler.

To fix this, make it so that NewContext can keep the cancel function
around, for Run to use it in this scenario. And add a test case that
tests this very edge case, which used to time out before the fix.

Fixes #289.
2019-04-07 19:28:41 +02:00
2019-02-22 00:13:27 +01:00
2019-04-01 12:17:28 +01:00
2019-04-01 12:18:16 +01:00
2019-04-01 12:17:28 +01:00
2019-04-03 09:03:41 +02:00
2019-04-01 19:55:40 +01:00
2017-12-28 11:17:14 +07:00
2018-03-27 04:31:09 +07:00
2019-04-01 19:55:40 +01:00
2018-07-13 12:46:30 +07:00
2019-04-01 19:55:40 +01:00
2019-04-07 13:37:32 +02:00
2019-04-03 09:03:41 +02:00

About chromedp Build Status Coverage Status

Package chromedp is a faster, simpler way to drive browsers supporting the Chrome DevTools Protocol in Go using the without external dependencies (ie, Selenium, PhantomJS, etc).

Installing

Install in the usual Go way:

go get -u github.com/chromedp/chromedp

Examples

Please see the examples project for more examples. Please refer to the GoDoc API listing for a summary of the API and Actions.

Resources

TODO

  • Move timeouts to context (defaults)
  • Implement more query selector options (allow over riding context timeouts)
  • Contextual actions for "dry run" (or via an accumulator?)
  • Network loader / manager
  • Profiler
Description
No description provided
Readme 2 MiB
Languages
Go 100%