【问题标题】:Selenium WebDriver - how to get proxy used?Selenium WebDriver - 如何使用代理?
【发布时间】:2018-12-02 15:45:23
【问题描述】:

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

在我的代码执行过程中,我需要随时知道我的 WebDriver 正在使用哪些参数。

我知道如何获取用户代理:

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

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

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

【问题讨论】:

  • 谢谢,但这并不能解决我的问题。我需要检查我当前的 Web 浏览器实例正在使用哪个代理。我不需要更改代理。

标签: python selenium-chromedriver http-proxy


【解决方案1】:

适用于 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;
        }
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-15
    • 2016-12-05
    • 1970-01-01
    • 2015-03-19
    相关资源
    最近更新 更多