我正在创建一个脚本,爬网一个网站,收集一些数据,但问题是,他们阻止了我后,太多的请求,但使用代理,我可以发送更多的请求比目前我做的.我已将proxy与chrome option --proxy-server
集成
options.add_argument('--proxy-server={}'.format('http://ip:port'))
但我使用的是付费代理,所以它需要身份验证,下面的屏幕截图显示了用户名和密码的警告框
options.add_argument('--proxy-server={}'.format('http://username:password@ip:port'))
但它似乎也不起作用.我正在寻找一种解决方案,在下面找到了一种解决方案,我将其与chrome extension proxy auto auth一起使用,而不使用chrome extension
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
但上述两项都没有正常工作,这似乎是因为在上面的代码之后,代理身份验证alert 消失了,当我通过谷歌搜索what is my IP判断我的IP并确认它不工作时.
请任何人谁可以帮助我验证chromedriver上的代理服务器.