小编Yas*_*aso的帖子

在Firefox Geckodriver的python中为selenium设置代理

我的问题是关于在Firefox(Geckodriver v0.18.0-win64)的python(2.7)中使用selenium(3.4.3.)编码设置代理.http://www.seleniumhq.org/docs/04_webdriver_advanced.jsp中的规范 仅提供了一个java示例.

from selenium import webdriver
PROXY = "94.56.171.137:8080"
class Proxy(object):        
    def __call__(self):    
        self.base_url = "https://whatismyip.com"
        print self.base_url        
        # proxy json object
        desired_capability = webdriver.DesiredCapabilities.FIREFOX['proxy']={
           "httpProxy":PROXY,
            "ftpProxy":PROXY,
            "sslProxy":PROXY,
            #"noProxy":None,
            "proxyType":"manual"
        }    
        firefox_profile = webdriver.FirefoxProfile()
        firefox_profile.set_preference("browser.privatebrowsing.autostart", True)
        self.driver = webdriver.Firefox(executable_path='D:\Code\Drivers\geckodriver',firefox_profile=firefox_profile,  capabilities=desired_capability)         
        self.driver.get(self.base_url)    

if __name__ == "__main__":        
    proxy_test = Proxy()
    proxy_test()
Run Code Online (Sandbox Code Playgroud)

我收到以下错误信息:

selenium.common.exceptions.WebDriverException:消息:无法加载配置文件.可能的firefox版本不匹配.您必须使用GeckoDriver代替Firefox 48+.

如果我评论有关代理的代码,我可以在私有模式下获取页面作为指定的配置文件.我认为是代理搞砸了.

proxy python-2.7 selenium-webdriver geckodriver firefox-profile

3
推荐指数
2
解决办法
5173
查看次数