chromedp现在默认是无头模式的,但是有的时候我们看浏览器执行的状态,还有部分操作是在无头模式下报错,所以需要显示窗口。
opts := append(chromedp.DefaultExecAllocatorOptions[:],
chromedp.NoDefaultBrowserCheck, //不检查默认浏览器
chromedp.Flag("headless", false), //开启图像界面,重点是开启这个
chromedp.Flag("ignore-certificate-errors", true), //忽略错误
chromedp.Flag("disable-web-security", true), //禁用网络安全标志
chromedp.NoFirstRun, //设置网站不是首次运行
chromedp.UserAgent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.164 Safari/537.36"), //设置UserAgent
)
allocCtx, _ := chromedp.NewExecAllocator(context.Background(), opts...)
// defer cancel()
ctx, _ := chromedp.NewContext(
allocCtx,
chromedp.WithLogf(log.Printf),
)