Selenium WebDriver-如何使用代理?

时间:2018-12-02 15:45:24

标签: python selenium-chromedriver http-proxy

我在Python中使用Selenium WebDriver进行Web抓取,并且经常更改代理和用户代理。

在执行代码期间,我需要随时知道WebDriver正在使用哪些参数。

我知道如何通过以下方式获取用户代理:

driver.execute_script("return navigator.userAgent;")

但是我找不到找到使用代理的方法。是否有类似的东西?:

driver.execute_script("return navigator.proxy;")

1 个答案:

答案 0 :(得分:0)

对于Java和Chrome

    options.addArguments("--proxy-server=socks5://127.0.0.1:"+proxyPort);
    driver = new ChromeDriver(options);
    driver.getCapabilities().merge(options);//need to appear socks in Capabilities

接下来的代码

    UnmodifiableIterator iterator=((ImmutableList)((((TreeMap)((ChromeDriver) driver).getCapabilities().asMap().get("goog:chromeOptions")).get("args")))).iterator();
    while (iterator.hasNext())
    {
        String data=(String) iterator.next();
        if (data.contains("proxy")) {
            return data;
        }
    }