我想在 chromedp 上使用代理,但代理似乎不起作用,尝试了 chromedp.ProxyServerctx, cancel := chromedp.NewContext(context.Background())defer cancel()chromedp.ProxyServer("http://username:password@proxyserver.com:31280")chromedp.Run(ctx, chromedp.Navigate("http://wtfismyip.com"), chromedp.Sleep(3*time.Second), chromedp.ActionFunc(func(ctxt context.Context) error { _, _, contentRect, err := page.GetLayoutMetrics().Do(ctxt) v := page.Viewport{ X: contentRect.X, Y: contentRect.Y, Width: contentRect.Width, Height: contentRect.Height, Scale: 1, } buf, err := page.CaptureScreenshot().WithClip(&v).Do(ctxt) log.Printf("Write %v", "/tmp/ss.png") ioutil.WriteFile("/tmp/ss.png", buf, 0644) return err }))使用代理后我得到了我的公共 ipeven。没有错误/警告
1 回答
冉冉说
TA贡献1877条经验 获得超1个赞
尝试这个:
o := append(chromedp.DefaultExecAllocatorOptions[:],
//... any options here
chromedp.ProxyServer("http://username:password@proxyserver.com:31280"),
)
cx, cancel := chromedp.NewExecAllocator(context.Background(), o...)
defer cancel()
ctx, cancel := chromedp.NewContext(cx)
defer cancel()
//... the rest of your code
- 1 回答
- 0 关注
- 207 浏览
添加回答
举报
0/150
提交
取消