如何为 selenium 设置 socks4 代理?

问题描述

我需要设置袜子版本 4,但我有很多搜索,但我找不到我的答案。 最后我写了这段代码,但我得到了错误

prox = Proxy()
prox.proxy_type = ProxyType.MANUAL
prox.autodetect = False
prox.socks_proxy = '<ip>:<port>'
capabilities = webdriver.DesiredCapabilities.CHROME
prox.add_to_capabilities(capabilities)
browser = webdriver.Chrome(executable_path=chrome_driver_path,options=chrome_options,desired_capabilities=capabilities)
browser.get('https://www.google.com')

我的错误

selenium.common.exceptions.InvalidArgumentException: Message: invalid argument: cannot parse capability: proxy
from invalid argument: Specifying 'socksProxy' requires an integer for 'socksVersion'

解决方法

PROXY = "127.0.0.1:9150"
webdriver.DesiredCapabilities.CHROME['proxy'] = {
    "httpProxy": PROXY,"ftpProxy": PROXY,"sslProxy": PROXY,"proxyType": "MANUAL","socksProxy": PROXY,"socksVersion":5

}

您可以使用所需的功能,您不必传递它,因为您正在直接更新 chrome 的功能

你也可以使用

PROXY = "127.0.0.1:9150"
caps= webdriver.DesiredCapabilities.CHROME.copy()
caps['proxy'] = {
    "httpProxy": PROXY,"socksVersion":5

}
driver = webdriver.Chrome(desired_capabilities=caps)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...