Skip to content

在中国怎么使用国外身份验证的http代理IP #1205

@zhuy1228

Description

@zhuy1228

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

No one assigned

    Labels

    questionQuestions related to rod

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions