Selenium webdriver没有连接到代理

时间:2018-03-02 18:34:38

标签: python-2.7 selenium selenium-webdriver

我面临一个奇怪的问题,并考虑重新配置selenium webdriver库。在此之前我希望在这里找到一个更简单的答案。 仅供参考:我正在使用python 2.7

我有2个功能和1个型号:

此功能用于启动Firefox sessionr

def register_user():
    proxy_config = ProxyHandler.set_proxy()
    driver = webdriver.Firefox(proxy=proxy_config.proxy, firefox_profile=proxy_config.profile)
    driver.get('https://api.ipify.org?format=json')

接下来我连接的代理工作得非常好。我用ipify.org api测试它。我还尝试删除此调用,因为代理可能只能使用一次,并且可能在此调用后断开连接。

def set_proxy():
username = 'USENAME'
password = 'PASSWORD'

entry = ('http://customer-%s:%s@pr.oxylabs.io:8000' %
         (username, password))

query = urllib2.ProxyHandler({
    'http': entry,
    'https': entry,
    'proxyType': ProxyType.MANUAL,
    'httpProxy': entry,
    'ftpProxy': entry,
    'sslProxy': entry,
    'noProxy': ''  # set this value as desired
})

proxy = urllib2.build_opener(query)

req = proxy.open("https://api.ipify.org?format=json").read()
j = json.loads(req)
ip = j['ip']
print ip

profile = webdriver.FirefoxProfile()
profile.set_preference("network.proxy.type", 1)
profile.set_preference("network.proxy.http", ip)
profile.set_preference("network.proxy.https", ip)
profile.set_preference("network.proxy.ssl", ip)
profile.set_preference("modifyheaders.headers.name0", "X-Forwarded-For")
profile.set_preference("modifyheaders.headers.name1", "X-Client-IP")
profile.set_preference("modifyheaders.headers.value0", ip)
profile.set_preference("modifyheaders.headers.value1", ip)
profile.update_preferences()
prof = profile

return ProxyModel.ProxyModel(proxy, prof, ip)

最后我的模型,应该没问题。

class ProxyModel:

def __init__(self, _proxy, _profile, _ip):
    self.proxy = _proxy
    self.profile = _profile
    self.ip = _ip

selenium webdriver是否能够打开与urllib2.ProxyHandler实例设置的会话?我是否正确打开了webdriver实例? 任何帮助表示赞赏

0 个答案:

没有答案