如何在Firefox geckodriver中使用代理?

2024-04-27 11:40:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图使用Firefox webdriver geckodriver设置一些代理,但它一直抛出这个错误InvalidArgumentError: Since Firefox 90 'ftpProxy' is no longer supported

我尝试了许多不同的方法,在这一次中,代码中断引发了异常:

        firefox_capabilities = webdriver.DesiredCapabilities.FIREFOX
        firefox_capabilities['marionette'] = True

        firefox_capabilities['proxy'] = {
            "proxyType": "MANUAL",
            "httpProxy": PROXY,
            "ftpProxy": PROXY,
            "sslProxy": PROXY
        }

        driver = webdriver.Firefox(executable_path=path,options=options,capabilities=firefox_capabilities)

在本例中,代码运行,但我已经测试了IP,它使用的是我自己的IP而不是代理(为了确保代理正常工作,我使用chromedriver运行了它,它正常工作):

from selenium.webdriver.common.proxy import Proxy, ProxyType

            proxy = Proxy({
                'proxyType': ProxyType.MANUAL,
                'httpProxy': PROXY,
                'ftpProxy': PROXY,
                'sslProxy': PROXY,
                'noProxy': '' # set this value as desired
                })

            driver = webdriver.Firefox(executable_path=path,options=options,proxy=proxy )

你们能帮我安排一下吗


Tags: path代理driverfirefoxmanualproxyoptionswebdriver
1条回答
网友
1楼 · 发布于 2024-04-27 11:40:09

我刚刚意识到这是正确的代码,我的问题是因为我使用的是代理库,代理不好

from selenium.webdriver.common.proxy import Proxy, ProxyType

            proxy = Proxy({
                'proxyType': ProxyType.MANUAL,
                'httpProxy': PROXY,
                'ftpProxy': PROXY,
                'sslProxy': PROXY,
                'noProxy': '' # set this value as desired
                })

            driver = webdriver.Firefox(executable_path=path,options=options,proxy=proxy )

相关问题 更多 >