-
-
Notifications
You must be signed in to change notification settings - Fork 430
Open
Labels
questionQuestions related to rodQuestions related to rod
Description
Rod Version: v0.116.2
使用身份验证的http请求无效,试了网上能够搜索到的很多方法
我的代码如下
// 判断是否传递代理
var proxyHandle utils.ProxyHandle
protocol, username, password, ip, port, errProxy := proxyHandle.ParseProxy(params.Proxy)
l := launcher.New().
Bin(path).
Proxy(protocol+"://"+ip+":"+port). // 直接传入完整认证URL
// Set("proxy-server", protocol + "://" + ip + ":" + port).
// Set("proxy-auth", username+":"+password).
Set("disable-blink-features", "AutomationControlled"). // 绕过自动化检测
// Set("incognito"). // 无痕模式
// Set("user-data-dir", absPath). // 数据持久化目录
Set("window-size", "1920,1480"). // 窗口尺寸
Set("disable-infobars", "true"). // 隐藏自动化提示栏
Set("no-sandbox", "true").
Set("excludeSwitches", "enable-automation").
Set("enable-gpu"). // 启用 GPU 加速
Set("ignore-certificate-errors"). // 忽略证书错误
Set("use-fake-ui-for-media-stream"). // 允许媒体流
Set("autoplay-policy", "no-user-gesture-required"). // 自动播放
Set("ignore-certificate-errors").
Set("disable-features", "BlockInsecurePrivateNetworkRequests").
Set("disable-application-cache").
Set("disable-dev-shm-usage").
Headless(false) // 关闭无头模式
if errProxy == nil {
if strings.Contains(protocol, "http") {
log.Println(protocol + "://" + ip + ":" + port)
// l = l.Set("proxy-server", protocol+"://"+ip+":"+port)
}
}
uri := l.MustLaunch()
browser := rod.New().
ControlURL(uri).
MustConnect()
if errProxy == nil {
if strings.Contains(protocol, "http") {
log.Println(username, password)
browser.HandleAuth(username, password)
// go browser.MustHandleAuth(username, password)()
}
}
page := browser.MustPage("")
page.MustSetViewport(1920, 1480, 1.0, false)Metadata
Metadata
Assignees
Labels
questionQuestions related to rodQuestions related to rod