相关疑难解决方法(0)

如何在Selenium chromedriver python中设置带身份验证的代理?

我正在创建一个脚本,用于爬网一个网站以收集一些数据,但是问题是,在请求过多后,它们阻止了我,但是使用代理,我可以发送的请求要多于当前的请求。我已经将代理与chrome选项集成在一起--proxy-server

options.add_argument('--proxy-server={}'.format('http://ip:port'))

但是我使用的是付费代理,因此需要身份验证,如下面的屏幕截图所示,它提供了用户名和密码的警告框

硒代理身份验证警报框 然后我尝试使用它与用户名和密码

options.add_argument('--proxy-server={}'.format('http://username:password@ip:port'))

但这似乎也不起作用。我在寻找解决方案,并在下面找到解决方案,并与chrome扩展代理自动身份验证一起使用,而没有chrome扩展

proxy = {'address': settings.PROXY,
             'username': settings.PROXY_USER,
             'password': settings.PROXY_PASSWORD}

capabilities = dict(DesiredCapabilities.CHROME)
capabilities['proxy'] = {'proxyType': 'MANUAL',
                             'httpProxy': proxy['address'],
                             'ftpProxy': proxy['address'],
                             'sslProxy': proxy['address'],
                             'noProxy': '',
                             'class': "org.openqa.selenium.Proxy",
                             'autodetect': False,
                             'socksUsername': proxy['username'],
                             'socksPassword': proxy['password']}
options.add_extension(os.path.join(settings.DIR, "extension_2_0.crx")) # proxy auth extension
Run Code Online (Sandbox Code Playgroud)

但以上两种方法均不能正常工作,因为似乎在上述代码之后,代理身份验证警报消失了,并且当我通过谷歌搜索我的IP并确认其无效时检查了我的IP时。

请任何可以帮助我在chromedriver上认证代理服务器的人。

proxy selenium python-3.x selenium-chromedriver

1
推荐指数
4
解决办法
4536
查看次数