Chrome:
chromedriver = 'C:/Program Files (x86)/Google/Chrome/Application/chromedriver.exe'
1.chome_options = webdriver.ChromeOptions()
2.chome_options.add_argument(('--proxy-server=http://' + ip))
3.os.environ["webdriver.chrome.driver"] = chromedriver
4.driver = webdriver.Chrome(chromedriver, chrome_options=chome_options)
Firefox:
from selenium import webdriver profile = webdriver.FirefoxProfile() profile.set_preference('network.proxy.type', 1) profile.set_preference('network.proxy.http', ip)# 这里写ip profile.set_preference('network.proxy.http_port', 3128)# 这里写端口 profile.set_preference('network.proxy.ssl', ip) # 这里写ip profile.set_preference('network.proxy.ssl_port', 3128) # 这里写端口 profile.update_preferences() driver = webdriver.Firefox(profile)
这些坑分别是:
有些地方只告诉你配置network.proxy.http和network.proxy.http_port。但是如果不设置network.proxy.type,一切都是浮云。这个配置是个整数,默认是0,就是直接连接;1就是手工配置代理。
profile.set_preference(‘network.proxy.type’, 1)
那个端口号3128是整数
profile.set_preference(‘network.proxy.http’, ‘proxy_url’)
profile.set_preference(‘network.proxy.http_port’, 3128)
如果有些资源是https的,是需要另外配置network.proxy.ssl和network.proxy.ssl_port的。例如facebook的图片。。。
set完以后,是需要update_preferences的。。。
profile.update_preferences()
最后贴一个完整的Firefox配置参数表:http://kb.mozillazine.org/Firefox_:_FAQs_:_About:config_Entries
如果发现自己的配置好像没有生效,那么在webdriver启动的Firefox里面输入about:config。然后对着上面那个配置参数表来看。总会发现掉哪个坑的。\