Skip to content

Commit

Permalink
fix alert box blocking (#89)
Browse files Browse the repository at this point in the history
* fix alert box blocking

fix bug #71

* Update fix in full screen case

fix bug  #71
  • Loading branch information
Serizao committed Mar 3, 2021
1 parent 84ef468 commit bd6114e
Showing 1 changed file with 27 additions and 0 deletions.
27 changes: 27 additions & 0 deletions chrome/chrome.go
Expand Up @@ -8,6 +8,7 @@ import (
"net/url"
"strings"
"time"
"fmt"

"github.com/chromedp/cdproto/emulation"
"github.com/chromedp/cdproto/page"
Expand Down Expand Up @@ -153,10 +154,24 @@ func (chrome *Chrome) Screenshot(url *url.URL) ([]byte, error) {

if chrome.FullPage {
// straight from: https://github.com/chromedp/examples/blob/255873ca0d76b00e0af8a951a689df3eb4f224c3/screenshot/main.go#L54
chromedp.ListenTarget(ctx, func(ev interface{}) {
if ev, ok := ev.(*page.EventJavascriptDialogOpening); ok {
fmt.Println("closing alert:", ev.Message)
go func() {
if err := chromedp.Run(ctx,
page.HandleJavaScriptDialog(true),
); err != nil {
panic(err)
}
}()
}
})
if err := chromedp.Run(ctx, chromedp.Tasks{
chromedp.Navigate(url.String()),
chromedp.Sleep(time.Duration(chrome.Delay) * time.Second),
chromedp.ActionFunc(func(ctx context.Context) error {


// get layout metrics
_, _, contentSize, err := page.GetLayoutMetrics().Do(ctx)
if err != nil {
Expand Down Expand Up @@ -197,6 +212,18 @@ func (chrome *Chrome) Screenshot(url *url.URL) ([]byte, error) {

} else {
// normal viewport screenshot
chromedp.ListenTarget(ctx, func(ev interface{}) {
if ev, ok := ev.(*page.EventJavascriptDialogOpening); ok {
fmt.Println("closing alert:", ev.Message)
go func() {
if err := chromedp.Run(ctx,
page.HandleJavaScriptDialog(true),
); err != nil {
panic(err)
}
}()
}
})
if err := chromedp.Run(ctx, chromedp.Tasks{
chromedp.Navigate(url.String()),
chromedp.Sleep(time.Duration(chrome.Delay) * time.Second),
Expand Down

0 comments on commit bd6114e

Please sign in to comment.